Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

`Call nom_module.nom_procedure` avec variables à la place des noms ?

2 réponses
Avatar
Thierry B.
Bonjour,

J'ai un formulaire avec deux listes déroulantes et un bouton. La
première avec la liste des modules, la seconde avec la liste de toutes
les procédures du module sélectionné dans la 1ère liste.

Ensuite un clic sur le bouton doit exécuter la procédure correspondant
au module et à la procédure sélectionnés. Normalement un lancement
direct se fait par :

Call module.procédure

Mais comme ces valeurs sont stockées dans des variables, par exemple
var_mod et var_proc, je fais

Call var_mod.var_proc

mais çà ne marche pas. J'ai essayé plusieurs méthodes, comme eval(),
mais je n'arrive jamais à lancer une procédure. Par exemple :

Eval ("Call " & mod_name & "." & proc_name)

génère "erreur 2482 : Impossible pour MS ACess de trouver le nom 'Call'
entré dans l'expression"

Si j'essaie sans le CALL :

Eval (mod_name & "." & proc_name)

cela donne le même message, sauf que 'Call' est remplacé par le nom du
module que j'avais sélectionné.

Je sèche !

--
Thierry B.
http://www.cerbermail.com/?VpivkBsJyz

2 réponses

Avatar
3stone
Salut,

"Thierry B."
| J'ai un formulaire avec deux listes déroulantes et un bouton. La
| première avec la liste des modules, la seconde avec la liste de toutes
| les procédures du module sélectionné dans la 1ère liste.
|
| Ensuite un clic sur le bouton doit exécuter la procédure correspondant
| au module et à la procédure sélectionnés. Normalement un lancement
| direct se fait par :
|
| Call module.procédure



Je me demande le pourquoi d'une telle construction...

Pourquoi ne pas appeler des fonctions directement ?


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Thierry B.
Salut,

"Thierry B."
| J'ai un formulaire avec deux listes déroulantes et un bouton. La
| première avec la liste des modules, la seconde avec la liste de toutes
| les procédures du module sélectionné dans la 1ère liste.
|
| Ensuite un clic sur le bouton doit exécuter la procédure correspondant
| au module et à la procédure sélectionnés. Normalement un lancement
| direct se fait par :
|
| Call module.procédure



Je me demande le pourquoi d'une telle construction...

Pourquoi ne pas appeler des fonctions directement ?




Oui je sais bien, mais ici l'utilisateur choisit le module et la
procédure à lancer à l'aide de listes déroulantes...

--
Thierry B.
http://www.cerbermail.com/?VpivkBsJyz