|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
Bonjour,
Dans le cadre de mon travail, je retouche une application Access (série de formulaires) développée par une personne avant moi. Je suis relativement Novice en Access, mais je maitrise le SQL et autres programmes. Je rencontre actuellement un problème: Je cherche à modifier un formulaire afin que certains champs soient concaténés en un seul (plusieurs villes appartenant à une même zone géographique). J'ai trouvé un programme VBA sur internet me permettant cela: http://access.fr.free.fr/articles.php?lng=fr&pg=45 J'ai donc créé cette fonction dans un module de ma base de données. Cependant, j'interviens sur la requête sql définissant la source du formulaire (donc à priori hors VBA), et quand j'utilise la fonction, le message "Fonction non définie dans l'expression". Avez-vous la solution à mon problème ou un conseil?? Merci! |
|
|
00
|
|
|
#2 |
![]() ![]() |
salut,
une solution est disponible via la a ce sujethttp://access.developpez.com/sources...QLLigneColonne
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
Merci pour la réponse rapide!
Donc je me suis inspiré du code du lien que vous m'avez envoyé. J'ai créé un module avec la fonction à l'intérieur, définie en "Public". Cependant, quand je fais appel à cette fonction dans la requête SQL dont va dépendre mon formulaire, je reçois un message me disant que la fonction n'est pas définie dans l'expression... Si j'essaie de faire ça directement en VBA, c'est la même problème... Donc j'imagine que ma fonction créée n'est pas reconnue par Access, elle ne s'est pas insérée dans le panel des fonctions disponibles et n'est donc jamais reconnue... Comment faire pour que cette fonction soit utilisable? Merci encore |
|
|
00
|
|
|
#4 |
![]() ![]() |
OK,
peux-tu jeter un oeil dans les references de ta base, il est probable que certaines librairies/references soient indiquees comme MANQUANT. Decoche celles qui manquent et relance le code.
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
A priori rien de manquant dans les modules cochés... A moins que cette info soit masquée...
Mais j'ai déjà tenté de décocher un truc, compiler la base, recocher le truc, recompiler la base et... rien de neuf sous les tropiques... |
|
|
00
|
|
|
#6 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
ne idée de comment m'en sortir?
A savoir que la personne ayant construit la Base de données et l'application a déjà utilisé des fonctions qui sont utilisées... Mais moi ça marche pas |
|
|
00
|
|
|
#7 |
![]() ![]() |
Peut-on voir le contenu SQL que tu souhaites lancer stp ?
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#8 | ||||
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
Ca risque d'être une peu indigeste... Mais allons y!
Donc le code de ma fonction: Code :
Code SQL :
|
||||
|
|
00
|
|
|
#9 | ||
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
A savoir qu'une requete simple du type:
Code :
|
||
|
|
00
|
|
|
#10 |
![]() ![]() |
OK,
partons du debut : - ta fonction lancee par VBA donne-t-elle le resultat escompte
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#11 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
Quand je teste dans le volet exécution de VBA, et que je lance ListeCommunes(M0022)
Cela me dit "Erreur de compilation. Variable ou procédure attendue, et non un module) Je suis débutant en VBA, je comprend la logique des codes mais je suis peu familier avec ce langage... |
|
|
00
|
|
|
#12 |
![]() ![]() |
OK,
sais-tu sur quelle ligne de code l'application semble te jeter ?
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#13 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
Oulala...
Je suis novice, comme je l'ai dit... Donc je vais doucement réexpliquer ce que j'ai fait, et si possible tu me diras un peu les étapes. Désolé si je prend beaucoup de ton temps. 1 - J'ai créé ma fonction dans un module. 2 - Je vais dans le formulaire qui m'intéresse pour faire appel à ma fonction, et j'attends en sortie un tableau de données (en mode consultation) avec le récapitulatif des différents champs y compris celui concaténé dans le sous formulaire 3 - pour cela, je me met en mode édition sur le sous-formulaire, et je modifie la requête à la base du formulaire à partir d'un clic droit sur le sous-formulaire et modifie le champ "Source" des sous-propriétés, avec la requête que j'avais postée plus haut (qui est certes un peu indigeste). Donc voilà, ça ne marche pas... L'erreur de fonction non définie est là. Je ne sais pas comment tester ma fonction, ni comment tester la requête sauf à partir de la fenêtre d'édition de la requête et le petit bouton "exécuter" Donc si tu peux me guider en mode pas à pas, ça m'aiderai pas mal, je comprend mal le fonctionnement d'access et j'ai du mal à trouver l'info sur les différents forums du net. Merci encore |
|
|
00
|
|
|
#14 | ||
![]() ![]() |
OK,
en allant dans l'editeur VBE, tu crees une Sub bidon qui va appeler ta fonction Code :
tu mets ton curseur sur la ligne Debug, et tu cliques sur F8 (on fait ce qu'on appelle du pas a pas), tu vas avoir au moment de rentrer dans la fonction ListeCommunes un erreur, avec en principe une indication de la ligne ou le code "te jette".
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
||
|
00
|
|
|
#15 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
C'est fait.
Il y avait un petit soucis de syntaxe dans ma fonction. C'est corrigé et le résultat attendu est donné. Cependant, l'erreur de fonction non définie persiste quand je teste ma requete dans le formulaire... |
|
|
00
|
|
|
#16 |
![]() ![]() |
peux-tu ajouter la portee de ta fonction en Public ou est-ce deja fait ?
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#17 | ||
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
C'est fait...
Sur la même page que ma fonction, juste à la suite, je lance: Code :
Cependant, arrivé à Set res2, l'annonce de fonction non définie... Pourtant tout est comme dans l'exemple que tu m'avais posté plus haut, juste adapté à ma BdD... Une idée de ce qu'il se passe? |
||
|
|
00
|
|
|
#18 |
![]() ![]() |
![]() est-il possible pour toi de compacter la base, la zipper et de la mettre sur le forum ? en pensant a enlever les donnees confidentielles et tout element non diffusable
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
|
|
#19 |
|
Futur Membre du Club
![]() Inscription : avril 2011 Messages : 48 ![]() |
C'est un peu délicat à vrai dire...
Je viens de débuter et je ne sais pas définir ce qui est diffusable ou non, à savoir que même la structure de la BdD peut l'être... La solution de simple discussion me conviens mieux, je n'ai pas envie d'avoir des ennuis ou quoi que ce soit. As-tu une idée de choses à tester? |
|
|
00
|
|
|
#20 |
![]() ![]() |
ok
si on repart sur l'interface access, la requete Code SQL :
SELECT DISTINCT IdentifiantMA, ListeCommunes(IdentifiantMA) AS Communes FROM Ti_com_MA
__________________
Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access |
|
00
|
Copyright © 2000-2012 - www.developpez.com