SQL DANS VBA ACCESS 2007

BSALIM -  
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai 2 tables "Clients" et "Factures", je veux insérer du SQL dnas mon code VBA pour trouver toutes les factures d'un clients X entre une date "dateinfer" et "datesuper", le numéro du client et les deux dates sont recuperés d'un formulaire qui a trois champs (numéro_client, datedebut et datefin).
Ausein du code si je rentre manuellement le numéero du client et les deux dates tt fontionne bien et je recupère ttes les factures concernées par ma requete pour le bon client, mais si je recupère les valeux fournies par le formulaire j'aurai un message d'erreur comme quoi trop peu de paramètres
Je vous donne mon code du boutton commande0 (qui démarre la recherche), en espérant que vous puissiez m'aider
Merci d'avance.

Private Sub Commande0_Click()
Dim Db As DAO.Database
Dim Rs As DAO.Recordset
Dim y As Integer
Dim mysql As String
Dim dateinfer As Date
Dim datesuper As Date
Set Db = CurrentDb
dateinfer = Me.Texte9.Value
datesuper=Me.Texte11.value
y=Me.texte10.value
datesuper = Me.Texte11.Value
mysql = "select [datefacture],[nofacture]"
mysql = mysql + "from [factures]"
mysql = mysql + "where [factures]![nocontact].value= y"
'mysql = mysql + "AND [datefacture]>dateinfer"
'and [datefacture]<datesuper"
Set Rs = Db.OpenRecordset(mysql)
Rs.MoveFirst
While Not Rs.EOF
MsgBox Rs("nofacture") & " " & Rs("datefacture")
'& " " & Rs("nom_client") & " " & Rs("prenom")
Rs.MoveNext
Wend
Exit_Sub:
Set Rs = Nothing
Set Db = Nothing
End Sub

1 réponse

Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
bonjour,

une erreur ici :

mysql = mysql + "where [factures]![nocontact].value= y"

il faut faire :

mysql = mysql + "where [factures]![nocontact].value= " & y

;o)

polux
0