Bonjour,

Je suis nouvelle sur ce forum et débutante en Access, en programmation et en VBA... donc je vais essayer de m'exprimer le plus clairement possible mais je risque d'avoir des problèmes de vocabulaire parfois (en plus des problèmes techniques évidement).

Voilà, je voudrais définir une variable "recordset" en utilisant une requête SQL dans le texte. J'en ai une qui marche (ça a été laborieux pour trouver la bonne syntaxe mais elle marche...) et une qui ne marche pas mais j'aimerais bien qu'elle marche...

Celle qui marche :
Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
Set Rst_tr = Db.OpenRecordset("SELECT * FROM troncons WHERE DEPCYC = " & Chr(34) & v_DEPCYC & Chr(34))
Ici, "troncons" est une table et "v_DEPCYC" est une variable de type String (c'est pour ça qu'il fallait rajouter les Chr(34)...)

Celle qui ne marche pas :
Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
Set Rst_tr_ax = Db.OpenRecordset("SELECT * FROM troncons WHERE DEPCYC = " & Chr(34) & v_DEPCYC & Chr(34) "AND NAXE = " & naxe)
Ici, j'ai les mêmes qu'au dessus plus un autre critère : "naxe" qui est une variable de type Long

Sur la deuxième, VBA m'envoie valser au niveau du "AND NAXE" et me dit qu'il attend un séparateur de liste ou un ). En fait, il n'accepte pas les doubles côtes au milieu...
J'avais déjà eu ce problème avec le premier recordset que j'avais présenté mais là, je sèche...

Est-ce qu'une âme charitable saurait me dépanner pour cette malheureuse ligne de code ?

Ou alors, peut-on utiliser le premier recordset puis y ajouter un critère, du genre : sort-moi de ce recordset les enregistrements où le champ NAXE = variable naxe ?
Je ne sais pas quelle fonction ou syntaxe ou code ou quoi utiliser pour faire ça.

Merci d'avance pour toute aide que vous pourriez m'apporter.
Cordialement,
CLK