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

Requêtes et SQL. Discussion :

Erreur 3061 dans programme VBA


Sujet :

Requêtes et SQL.

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2008
    Messages : 50
    Par défaut Erreur 3061 dans programme VBA
    Bonjour à tous !
    Dans mon programme VBA je passe un paramètre à une requête SQL comme suit :

    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
    Option Compare Database
    Option Explicit
    Dim db As DAO.Database, rst As DAO.Recordset
    Sub ImpressionFacture()
     
    Set db = CurrentDb() ' Ouvre la requête facture
     
    'Saisie du numéro de facture pour impression
     
    Dim Réponse As Integer
    Dim sql As String
     
    Réponse = Val(InputBox("Saisissez le N° de facture :", "Saisie N° Facture"))
     
    sql = "SELECT * FROM Factures WHERE Factures.[N° Facture]= Réponse;"
     
    Set rst = CurrentDb.OpenRecordset(sql)
    Le programme plante à l'instruction ci-dessus avec le message "Erreur 3061 - Trop peu de paramètres 1 attendu"

    Que peut-il bien se passer ?

    Merci d'avance pour vos lumières ...

    fbou

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Il faut sortir réponse (qui est une variable) de la chaine.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql = "SELECT * FROM Factures WHERE Factures.[N° Facture]=" &  Reponse & ";"
    Sinon, tu cherches une facture qui a comme numéro Réponse

    De plus, supprimes les accents des mots lorsque tu développes.

    Philippe

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2008
    Messages : 50
    Par défaut
    Merci pour ta réponse mais ça ne marche toujours pas...Erreur 3061.
    La zone N°Facture dans la table est numérique et la variable sql est de type String ...Est-ce que ça pourrait jouer dans la syntaxe des 2 lignes suivantes ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Reponse = InputBox("Saisissez le N° de facture :", "Saisie N° Facture")
     
    sql = "SELECT * FROM Factures WHERE Factures.[N° Facture]=" & Reponse & ";"
     
    Set rst = db.OpenRecordset(sql)
    J'ai enlevé le Val(InputBox .....) de la première ligne pour donner à la variable reponse le type String mais ça ne change rien...

    Merci d'avance !

    Fbou

  4. #4
    Expert éminent

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Par défaut
    Bonjour

    Soit N° Facture est mal orthographié, soit il n'est pas de type numérique

Discussions similaires

  1. [vba] erreur 3061 & récupération recordset
    Par bugprog dans le forum Access
    Réponses: 1
    Dernier message: 04/05/2007, 16h00
  2. erreur dans programme java sur des vecteurs 3D
    Par HighSchool2005 dans le forum Langage
    Réponses: 18
    Dernier message: 15/02/2007, 16h38
  3. Erreur de syntaxe dans Access VBA
    Par rapace dans le forum Access
    Réponses: 3
    Dernier message: 20/12/2006, 12h29
  4. Erreur Windows ! Dans l'execution d'un programme !
    Par Geoff! dans le forum OpenGL
    Réponses: 3
    Dernier message: 01/06/2006, 16h36
  5. [VBA-A]erreur 2801 dans access vba
    Par anila dans le forum VBA Access
    Réponses: 2
    Dernier message: 24/05/2006, 20h03

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