VBA - DAO - recherche dans un recordset
Salut à tous,
j'ai un problème assez simple pour lequel je m'arrache les cheveux.
Je stocke une valeur numérique dans un formulaire dans une zone de texte appellé ici TEXTE.
Je veux ensuite rechercher dans une table PRODUITS l'enregistrement dans la cléf primaire (champ CODE_PRODUIT) dans la valeur corespond à TEXTE.
Puis je veux extraire (dans X) cet enregitrement, la valeur du champ2 (appellé CHAMP2).
J'utilise donc le code en DAO ci-dessou.
_______________________________________________
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Private Sub DAO_recherche
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim Code As Long
Dim X As String
Code = [TEXTE]
Set db = CurrentDb()
Set rst = db.OpenRecordset("SELECT * FROM [PRODUITS] WHERE [CODE_PRODUIT] = Code ")
X = rst("CHAMP2")
rst.Close
Set rst = Nothing
Set db = Nothing
End Sub |
____________________________________
Mais ca ne marche pas!
Par contre, admettons que code = 3 si je remplace Code sa valeur (3) dans l'expression suivante , alors la ça marche.
Je remplace:
Code:
1 2 3
| Set rst = db.OpenRecordset("SELECT * FROM [PRODUITS] WHERE [CODE_PRODUIT] = Code ")
Par
Set rst = db.OpenRecordset("SELECT * FROM [PRODUITS] WHERE [CODE_PRODUIT] = 3 ") |
Je n'y comprend rien, c'est comme ci il ne reconnaissait pas la variable Code.
Merci si vous pouvez m'aider.
Seb
Vous serez bientôt millionnaire (avec un peu de chance)
Alors la merci beaucoup, vous me sauvez la vie, je commencais à devenir fou 8-) . Vous venez de résoudre en 30 secondes des heures de prises de tête.
C'est à dire que je suis en train d'apprendre le VBA avec des bouquin, et le problème avec les bouquin c'est qu'ils oublient de te dire des petits détails du genre qui faut mettre un & avec les variables. Et puis quand tu leurs poses des questions ils te répondent pas, mais si tu leurs gueule dessus ou que tu les menaces de les brûler vifs par exemple. :lol:
Pour vous remercier je vais aller jouer au loto tout à l'heure et si je gagne des millions je vous en donnerais quelques uns.
Ne me remerciez pas c'est la moindre des choses. :mouarf:
Je vous tiens au courant pour le loto.
Merci encore
Seb