|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Bonjour à tous,
J'ai suivi le tutoriel de Christophe Warin et de Charles A, respectivement la Création et paramétrage dynamique de requêtes et Initiation - Débogage : requêtes écrites par VBA. Je les félicite au passage pour leur travail. Cependant, ma requete en SQL est trop grande pour.... VBA Je n'ai pas fait de fautes de SQL, j'ai vérifié également en utilisant debug.print. Il apparait que lors du debug.print dans la fenetre execution le code s'affiche sur 2 lignes, et seule la premiere ligne est enregistrée dans le champ access de la source SQL, la deuxieme est... ignorée, bien que stockée en VBA correctement. A noter que je veux faire rentrer mes lignes SQL dans le champ : "source" de mon formulaire (recordsource en VBA) Par contre, si dans le champ access je rentre la meme formule à la main, il ne me pose pas de probleme, d'ou mon soupçon d'un probleme entre vba et access. Une idée pour contourner le probleme? Merci à tous Damien |
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Bonjour,
Citation:
Citation:
Es-tu sûr que ton code ne contient pas un saut de ligne ou un caractère intempestif. Jette un coup d'oeil ici, si c'est un problème de formatage du sql. http://www.developpez.net/forums/d99...-formater-sql/ |
||
|
|
00
|
|
|
#3 | ||
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Bonjour.
Si je comprend bien, dans VBA, la requete sql est sur deux lignes avec, a la fin de la 1ere ligne, un espace et un "_". Si la requete sql est correct, peut etre faire de la facon suivante : Code :
Cdlt. Jean |
||
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Bonjour jj4822,
Ce que tu signales n’est pas spécifique au sql. Si tu veux, pour des raisons de lisibilité, écrire ton code sur plusieurs lignes, tu peux utiliser un espace et un "_". Ou procéder par concaténations successives comme tu l’indiques. Cela dépend des circonstances. A contrario, pour écrire plusieurs instructions sur une même ligne : http://access.developpez.com/faq/?pa...#PlrsLignEnUne |
|
|
00
|
|
|
#5 |
![]() ![]() |
Bonjour
Que veux-tu dire par trop grande ? Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
00
|
|
|
#6 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Bonjour à tous et merci de vous préoccuper de ce problème.
jj4822, meme si j'ai malgré tout essayé, Claude a raison, cela n'est pas spécifique au SQL et n'est utile que pour la lisibilité. Claude, j'ai essayé ton outil, il est plutot pratique, merci, mais cela me donne le même résultat que celui que j'avais avant. Ce que je propose, c'est de copier mon code SQL ici, je vous propose pour ceux qui veulent bien d'inserer via VBA ce code dans un recordsource d'un formulaire d'une de vos bases. Vous constaterez que l'opération se passe correctement mais que le remplissage de la propriété recordsource s'arrete un peu avant la fin de la clause FROM, le reste est ignoré. En passant par un debug.print, on constatera que tout ce qui est copié est exactement la meme chose que ce qui apparait sur la premiere ligne d'un debug.print En esperant que quelqu'un arrive à insérer cette requete entierement dans mon formulaire, j'attends de vos nouvelles. Merci Damien PS : la variable test n'a pas d'influence dans le résultat, j'ai essayé avec un critère fixe et non variable, j'aboutis au meme résultat Code :
|
||
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Bonjour,
pour tester valablement, peux-tu poster une BDD compatible Access2000 avec la définition des tables. |
|
|
00
|
|
|
#8 |
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Bonjour.
Je sais bien que ce que je signale n'est pas specifique a sql. Tout simplement il y a quelques temps, dans un de mes programmes, j'ai constate qu'une requete sur plusieurs lignes avec un espace suivi d'un "_" en fin de ligne me posait probleme dans VBA alors que la requete en elle meme etait correcte. En reprenant exactement la requete sql sans aucun changement, et en utilisant ce que je propose ici, j'ai resolu mon probleme, la requete entiere a ete executee et j'obtient le resultat attendu. J'avoue que je n'ai alors pas ete chercher plus loin. La solution que vous trouverez m'interessera. Cdlt. Jean. |
|
|
00
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Claude....
Je veux bien mais....je suis sur un groupe de travail sécurisé et ma base également. Comment puis je l'exporter vers un autre groupe de travail sachant que je suis sur 2007. Peut etre que ca marchera malgré tout, J'essaye, vous la trouverez en fichier joint. Merci de votre aide. |
|
|
00
|
|
|
#10 | ||
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Ok merci, j'ai pu lire
Chez moi, ça marche Dans un formulaire, un bouton avec ce code : Code :
![]() Il y a donc autre chose qui cloche dans ton code. |
||
|
|
00
|
|
|
#11 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Effectivement, je viens de faire une série de tests.
Et j'ai trouvé ce qui clochait ! Ton code fonctionne très bien, à partir du moment ou le formulaire est ouvert (forms! nom du formulaire). Par contre, et uniquement à partir d'un formulaire externe (ou du ruban dans mon cas) et que le formulaire sur lequel on veut changer le recordsource est fermé ! cela ne marche plus ! Dans ce cas on est obligé d'utiliser form_ nom du formulaire... c'est peut etre une piste? Cela veut il également dire que l'on est incapable d'enregistrer un nouveau recordsource en "dur"? puisqu'en rouvrant le formulaire la propriété recordsource a repris son état initial? Merci à vous, cela permet déjà de me débloquer en ayant une solution alternative. |
|
|
00
|
|
|
#12 | ||
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
le code suivant te permet de modifier la source en "dur" d'un formulaire autre que celui actif.
Code :
Par contre, je ne suis pas parvenu à modifier, de manière permanente, la source du formulaire actif. |
||
|
|
00
|
|
|
#13 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 45 ![]() |
Intéressant ce comportement.... et curieux que l'on ne puisse pas le faire à partir de ce formulaire.
Merci en tout cas pour ces solutions, le post est résolu ! Damien |
|
|
00
|
|
|
#14 | |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 238 ![]() |
Citation:
Je te suggère de poster la question. "Peut-on modifier, de manière permanente la source du formulaire actif" |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com