IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

erreur d´execution 3061


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 66
    Points : 26
    Points
    26
    Par défaut erreur d´execution 3061
    Bonjour, lorsque je clic sur mon bouton jái une erreur : trop peu de parametre, 1 attendu

    voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
        'Declaration des variables d'instanciation
    Dim appexcel As Excel.Application
    Dim wbexcel As Excel.Workbook
    Dim wsexcel As Excel.Worksheet
     
    'Declarations de Variables de données et d'exportation
    Dim XlLgn As Double
    Dim db As DAO.Database
    Dim Rst As DAO.Recordset
    Dim sSQL As String
     
     
    'Définition des instances
    Set appexcel = CreateObject("Excel.Application")
    Set wbexcel = appexcel.Workbooks.Open("D:\mes documents\Classeur1")
    Set wsexcel = wbexcel.Sheets("Fact")
     
     
    'Création du jeu de données
    Set db = CurrentDb
    sSQL = "SELECT facture1.[N° facture], facture1.Date, facture1.[Ref pces peinte], facture1.designation, facture1.[Quantité livrée], Sum(facture1.[Prix unitaire HT]) AS [SommeDePrix unitaire HT], facture1.[Prix unitaire HT], facture1.Pnull, [Quantité livrée]*[Prix unitaire HT] AS total, facture1.[N° BL], facture1.[ref commande], Client.[Nom client], Pièce.[Teinte/Ral], Client.Adresse, Client.Ville, Client.[Code postal], Client.[Référence client] FROM Pièce RIGHT JOIN (Client RIGHT JOIN facture1 ON Client.[Nom client] = facture1.Client) ON Pièce.[Référence pièce] = facture1.[Ref pces peinte]GROUP BY facture1.[N° facture], facture1.Date, facture1.[Ref pces peinte], facture1.designation, facture1.[Quantité livrée], facture1.[Prix unitaire HT], facture1.Pnull, [Quantité livrée]*[Prix unitaire HT], facture1.[N° BL], facture1.[ref commande], Client.[Nom client], Pièce.[Teinte/Ral], Client.Adresse, Client.Ville, Client.[Code postal], Client.[Référence client]" _
    & "HAVING (((facture1.[N° facture])=[Formulaires]![facture1]![N° facture]));"
     
    Set Rst = db.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
    Je cherche depuis un ertain moment san savoir d´ou cela pourrait venir.... pourriez vous m´aider merci...

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 66
    Points : 26
    Points
    26
    Par défaut
    Il est possible que j´ai une erreur de syntaxe dans ma requete sql ?

    Car ma requete me donne l´impression de bien marcher....


    Par contre c´est une requete comportant un filtre..... faudrait il que je deffinns quelque chose pour que le filtre fonctionne comme je le souhaite?.. le probleme vient peu etre de la...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    Le texte de ton Sql est copié depuis une requète non ?
    Cette requète fonctionne correctement ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 66
    Points : 26
    Points
    26
    Par défaut
    oui oui cést copier et elle marche...

    c´est une requete comportent un filtre sur le N° de facture...

    donc je l´ouvre , je tape le N° de facture et j´ai toutes les info sur ce N°...

    je voulais que ces infos soient reutilisées pour etre inscrites dans un fichier excel....


    donc je comprens pas d´ou vien l´erreur...

    c´est la derniere ligne qui est surligné en jaune...

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 66
    Points : 26
    Points
    26
    Par défaut
    par contre lorsque mon formulaire est ouvert ma requete ne fonctionne pas..... donc je pense que l´erreur se cache ici...

    ma requete est mal definie....

    je corrige et jéspere que ca marchera mieux....

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    Tu peux tester avec ça :

    Si la donnée [Formulaires]![facture1]![N° facture] est bien numérique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
        'Declaration des variables d'instanciation 
    Dim appexcel As Excel.Application 
    Dim wbexcel As Excel.Workbook 
    Dim wsexcel As Excel.Worksheet 
     
    'Declarations de Variables de données et d'exportation 
    Dim XlLgn As Double 
    Dim db As DAO.Database 
    Dim Rst As DAO.Recordset 
    Dim sSQL As String 
     
     
    'Définition des instances 
    Set appexcel = CreateObject("Excel.Application") 
    Set wbexcel = appexcel.Workbooks.Open("D:\mes documents\Classeur1") 
    Set wsexcel = wbexcel.Sheets("Fact") 
     
     
    'Création du jeu de données 
    Set db = CurrentDb 
    sSQL = "SELECT facture1.[N° facture], facture1.Date, facture1.[Ref pces peinte], facture1.designation, facture1.[Quantité livrée], Sum(facture1.[Prix unitaire HT]) AS [SommeDePrix unitaire HT], facture1.[Prix unitaire HT], facture1.Pnull, [Quantité livrée]*[Prix unitaire HT] AS total, facture1.[N° BL], facture1.[ref commande], Client.[Nom client], Pièce.[Teinte/Ral], Client.Adresse, Client.Ville, Client.[Code postal], Client.[Référence client] FROM Pièce RIGHT JOIN (Client RIGHT JOIN facture1 ON Client.[Nom client] = facture1.Client) ON Pièce.[Référence pièce] = facture1.[Ref pces peinte]GROUP BY facture1.[N° facture], facture1.Date, facture1.[Ref pces peinte], facture1.designation, facture1.[Quantité livrée], facture1.[Prix unitaire HT], facture1.Pnull, [Quantité livrée]*[Prix unitaire HT], facture1.[N° BL], facture1.[ref commande], Client.[Nom client], Pièce.[Teinte/Ral], Client.Adresse, Client.Ville, Client.[Code postal], Client.[Référence client]" _ 
    & "HAVING facture1.[N° facture]= " & Forms("facture1").N°_facture & ";" 
     
    Set Rst = db.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
    Tiens nous au courant...

  7. #7
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 111
    Points : 53
    Points
    53
    Par défaut
    Bonjour,

    voici comment je procède pour que ça marche.

    1°) je sélectionne une ligne dans une table.
    2°) je la copie dans une table temporaire.
    3°) j'exporte les données de la table temporaire vers un fichier Excel.
    4°) j'ouvre le fichier en question.

    voici les codes VBA qui marchent pour moi:

    1°) sélection:pas de code car c'est une requêt qui le fait
    2°) Copie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenQuery "AJOUT_TableEnAttenteExport"
    3°) exportation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferSpreadsheet acExport, , "en attente d'exportation", "S:\...\" & Forms!campagnes![NumeroCampagne] & ".xls"
    4°) ouverture du fichier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    'déclaration des variables
        Dim MonExcel As Excel.Application, wb As Excel.Workbook
        Dim Nomdufichier As String
     
        'le nom du fichier Excel va être le n° de la campagne
        Nomdufichier = Me!NumeroCampagne.Value
     
        'ouvrir le bon fichier Excel
        Set MonExcel = New Excel.Application
        Set wb = MonExcel.Workbooks.Open(FileName:="S:\COMMERCE\Interne\INDIVIDUS\HUGO\Base de données\" & Nomdufichier & ".xls")
    Voilà. J'espère que ça va t'aider. Si c'est le cas, pense à remercier Muhad'hib qui est le principal acteur de cette réussite.

    Mr White

Discussions similaires

  1. [XL-2003] Erreur d’execution ‘5’ dans userform
    Par sims92.66 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/07/2012, 12h17
  2. erreur dexecution l'ors de lancement d'un plugin nagios en perl
    Par chella dans le forum Programmation et administration système
    Réponses: 5
    Dernier message: 09/04/2011, 00h20
  3. [AC-2003] Erreur exécution 3061
    Par Line dans le forum VBA Access
    Réponses: 6
    Dernier message: 07/10/2009, 00h38
  4. erreur execution 3061
    Par fbu78 dans le forum VBA Access
    Réponses: 1
    Dernier message: 23/09/2008, 10h44
  5. Réponses: 3
    Dernier message: 03/11/2005, 18h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo