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 : 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
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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