[vba] pb chaine trop longue vba acccess

Fermé
Guiom - 26 août 2005 à 15:48
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 - 30 août 2005 à 10:55
Bonjour,

J'ai un pb sur access dans le code.
J'ai fait une requête (qui marche) que je voudrais intégrer dans du code. Seulement la requête est trop longue et ne rentre pas sur une ligne.

J'ai donc inséré "_" à la fin de la ligne pour couper la requête en 2, mais il me signale une erreur (erreur de compilation, Attendu séparateur de liste ou ) ) alors que la syntaxe de ma requête est bonne (j'ai vérifié).

Bref je sèche depuis 2 heures dessus.

Voici la ligne maudite:

Set vrf = mb.OpenRecordset("SELECT reception_commande.numpro, reception_commande.numtai, reception_commande.numcou, Sum(reception_commande.qterec) AS SommeDeqterec, couleur.libcou, produit.refpro, saison.libsai, commande.anncom, taille.libtai, fournisseur.numfrs, fournisseur.libfrs, saison.numsai FROM taille INNER JOIN (saison INNER JOIN (produit INNER JOIN (fournisseur INNER JOIN (couleur INNER JOIN (commande INNER JOIN reception_commande ON commande.numcom = reception_commande.numcom) ON couleur.numcou = reception_commande.numcou) ON fournisseur.numfrs = commande.numfrs) ON produit.numpro = reception_commande.numpro) ON saison.numsai = commande.numsai) ON taille.numtai = reception_commande.numtai GROUP BY reception_commande.numpro, reception_commande.numtai, reception_commande.numcou, couleur.libcou, produit.refpro, saison.libsai, commande.anncom, taille.libtai, fournisseur.numfrs, fournisseur.libfrs, saison.numsai _

HAVING (((commande.anncom)=" & me.annf & ") AND ((fournisseur.numfrs)= " & me.magf & ") AND ((saison.numsai)= " & me.saif & "));")


Merci

2 réponses

WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
26 août 2005 à 16:13
;-)

Essaie en passant par une variable... (à concaténer bien sûr)

;-)
0
Ok merci beaucoup!

Access ne me signale plus d'erreur, reste à tester si ça marche, la suite lundi...
0
RicHamilton Messages postés 49 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 18 juillet 2006
29 août 2005 à 15:51
Salut toi! en fait tu devrais plutôt essayer:
Set vrf=mb.OpenRecordset("Select ..., Saison.NumSai " & _
"HAVING (((Commande.AnneeCom ....;")

Fort probablement ça va marcher, bonne chance à toi!
0
Salut!

Bon j'ai testé la méthode de WhiteFang en utilisant des variables et ça marche!

RicHamilton par curiosité j'ai aussi essayé ce que tu m'as marqué et ça marche nickel! Il me manquait donc les " à la fin de la première ligne et au début de la suivante... 2 heures de perdues juste pour ça!

Bref merci beaucoup pour vos réponses c'est sympa!
0
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204 > Guiom
30 août 2005 à 10:55
;-)

Maintenant que les variables n'ont plus de secret pour toi, passe aux requêtes paramétrées.... Par des variables ! ;-)

Have fun ! ;-)
0