C'est normal car le résultat (l'ordre sql) de ce philben te propose sera
INSERT INTO tblListeDetail(IDProduit) VALUES (eau)
Access va prendre eau comme une variable SQL dont il ne trouve pas la définition et va te demander une valeur.
Comme ton eau n'est une variable mais une valeur textuelle il faut la mettre entre "
Donc tu devrais écrire
DoCmd.RunSQL "INSERT INTO tblListeDetail(IDProduit) VALUES (" & chr(34) & Me.IDProduit & chr(34) & ")"
chr(34) produisant des "
----
Ceci étant dit, j'ai deux remarques:
1) si je devais l'écrire moi-même je ne procéderais pas avec un DoCmd.RunSQL mais plutôt en passant par un DAO.RecordSet... As-toi de voir, peut-être y a-t-il des avantages que je connais pas à passer par un DoCmd.RunSQL...
2) Ce qui m'intrigue c'est ta phrase
Dans mon IDProduit j'ai plusieurs produits : pain, eau etc ... (avec chacun une référence numérique)
Qu'est ce que tu veux dire par "(avec chacun une référence numérique)" ?
Partager