|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Consultant ERP Inscription : août 2011 Messages : 4 ![]() |
Bonjour,
J'ai un problème se syntaxe à l'ouverture d'un recordset. J'ai déjà essayé "pratiquement" toutes les syntaxes, mais je n'arrive pas à trouver ce qui ne va pas. Description du problème : Lorsqu'on clique sur un bouton situé dans un formulaire ( nom du formulaire =PRINT NORMAL), il faudrait lancer l'impression d'une série de documents liés à des records (clé de chaque record =NUMREC) stockés dans une table (Nom de la table = MOVES). Les numéros des records sont encodés manuellement par l'utilisateur dans 2 champs textes situés dans le formulaire (TEXT1 et TEXT3). Voici le code utilisé pour l'instant : Code :
(Exemple : between 31 and 56 qui sont des numéros de records dans la table MOVES). Si vous pouviez m'aider, ça me rendrait évidemment grand service pour l'application sur laquelle je suis actuellement en train de travailler. Merci beaucoup. |
||
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 085 ![]() |
Bonjour,
Il ne faut pas utiliser Set lorsque tu affectes une valeur à une variable de type primaire comme tu le fais avec ta variable strsql. Ensuite ta chaine SQL n'est pas valide car tu utilises des espaces dans les noms de formulaire. Une erreur fréquente quand on débute. s'écrit Tu devrais t'interesser au tuto sur le debogage des requetes sous VBA. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
00
|
|
|
#3 |
|
Invité de passage
![]() Consultant ERP Inscription : août 2011 Messages : 4 ![]() |
Grand merci pour les infos !! Je ne peux malheureusement pas tester la syntaxe proposée car je n'ai pas le reste du code et de la version en développement à disposition pour l'instant (en vacances). Je teste la semaine prochaine et je réponds.
Encore merci et à bientôt. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Consultant ERP Inscription : août 2011 Messages : 4 ![]() |
Bonjour Loufab,
Désolés pour la réaction tardive, mais je n'avais pas la possibilité de me replonger dans ce "problème" pour l'instant. J'ai bien essayé la syntaxe proposée en tenant compte des crochets pour le nom du formulaire contenant un espace : Code :
strsql = "SELECT * FROM MOVES WHERE MOVES!NUMREC BETWEEN FORMS![PRINT NORMAL]!TEXT1 AND FORMS![PRINT NORMAL]!TEXT3" "Trop peu de paramètres. 2 attendus" et le débogeur se positionne sur la ligne : Quelle est l'explication de ce message. Merci beaucoup et à bientôt. |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 1 111 ![]() |
Bonjour,
A essayer : Code :
strsql = "SELECT * FROM MOVES WHERE NUMREC BETWEEN '" & FORMS![PRINT NORMAL]!TEXT1 & "' AND '" & FORMS![PRINT NORMAL]!TEXT3 & "'"
__________________
[Access] Les bases du débogage => ici |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Consultant ERP Inscription : août 2011 Messages : 4 ![]() |
Bonjour,
Merci beaucoup. Je venais justement d'essayer cette syntaxe, mais j'ai maintenant le message suivant : "Type de données incompatible dans l'expression du critère". J'ai vérifié et le type de données de la table correspond au type de données des champs Text1 et Text3 du formulaire de saisie. Je ne vois vraiment pas ?? |
|
|
00
|
|
|
#7 |
![]() ![]() Morgan BILLYTechnicien de Production Inscription : octobre 2004 Messages : 4 103 ![]() |
Bonjour,
Cette survient lorsque tu veux comparer un champs définit en numérique par du texte. NUMREC est de quel type dans la table ? sinon il faut le convertir. Expemple : CLng(FORMS![PRINT NORMAL]!TEXT3) ce qui donnerait Code :
strsql = "SELECT * FROM MOVES WHERE NUMREC BETWEEN '" & FORMS![PRINT NORMAL]!TEXT1 & "' AND " & CLng(FORMS![PRINT NORMAL]!TEXT3) & ";"
__________________
Personnaliser la vue Backstage d'Access 2010 Découvrez avec nous Office 2010 Je ne réponds pas aux questions techniques par MP
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() ![]() Inscription : avril 2006 Messages : 1 318 ![]() |
mon coeur balance entre type texte et numérique
, il faudrait tester avec un type numérique pour chaque valeur du between.philippe |
|
00
|
Copyright © 2000-2012 - www.developpez.com