OVH Cloud OVH Cloud

Macros et sous macro

2 réponses
Avatar
Christian.L
Bonjour à tous

Voila j'ai un ensemble de programmes qui font une tache particulière et qui
tous
se terminent par une boite de dialogue avec bouton "OK" m'indiquant que la
tache est finie.

J'ai un programme générale qui appelle les uns après les autres les
programmes de
tache particulière.

J'ai essayé plusieurs solutions avec des variables pour faire en sorte que
les boites de
dialogue de fin de tache des programmes appelés ne s'ouvrent pas, mais sans
résultat.

Quelqu'un a t'il une solution pour :
- avoir la boite de dialogue lors du fonctionnement indépendant de chaque
programme
- ne pas avoir cette boite de dialogue lors que le programme est appelé par
le programme général.

PS : les variables de contrôle déclaré en Public ne marche pas

Merci d'avance

C.L.

2 réponses

Avatar
Thierry Euzenot
Deux solutions :
1) Celle que j'utilise fréquemment : Au lieu d'une boîte de dialogue en fin
de tâche, écrire "Procédure en cours..." durant l'execution de(s) la(les)
macro(s) dans une cellule et effacer la cellule en fin de macro. Ca permet
de s'affranchir du problème de plusieurs macros.

2) En passant une variable lors de l'appel des procédures.
Si appel de la procédure en direct Flag = 0
Si appel de la procédure par une autre routine Flag = 1

Dans le code de la procédure : if Flag = 1 Then MsgBox("Ok")


"Christian.L" a écrit dans le message de
news:e%
Bonjour à tous

Voila j'ai un ensemble de programmes qui font une tache particulière et
qui

tous
se terminent par une boite de dialogue avec bouton "OK" m'indiquant que la
tache est finie.

J'ai un programme générale qui appelle les uns après les autres les
programmes de
tache particulière.

J'ai essayé plusieurs solutions avec des variables pour faire en sorte que
les boites de
dialogue de fin de tache des programmes appelés ne s'ouvrent pas, mais
sans

résultat.

Quelqu'un a t'il une solution pour :
- avoir la boite de dialogue lors du fonctionnement indépendant de chaque
programme
- ne pas avoir cette boite de dialogue lors que le programme est appelé
par

le programme général.

PS : les variables de contrôle déclaré en Public ne marche pas

Merci d'avance

C.L.




Avatar
Christian.L
Merci Thierry

Je l'ai fait avec une variable et cela marche

C.L.


"Thierry Euzenot" a écrit dans le message de
news:
Deux solutions :
1) Celle que j'utilise fréquemment : Au lieu d'une boîte de dialogue en
fin

de tâche, écrire "Procédure en cours..." durant l'execution de(s) la(les)
macro(s) dans une cellule et effacer la cellule en fin de macro. Ca permet
de s'affranchir du problème de plusieurs macros.

2) En passant une variable lors de l'appel des procédures.
Si appel de la procédure en direct Flag = 0
Si appel de la procédure par une autre routine Flag = 1

Dans le code de la procédure : if Flag = 1 Then MsgBox("Ok")


"Christian.L" a écrit dans le message de
news:e%
Bonjour à tous

Voila j'ai un ensemble de programmes qui font une tache particulière et
qui

tous
se terminent par une boite de dialogue avec bouton "OK" m'indiquant que
la


tache est finie.

J'ai un programme générale qui appelle les uns après les autres les
programmes de
tache particulière.

J'ai essayé plusieurs solutions avec des variables pour faire en sorte
que


les boites de
dialogue de fin de tache des programmes appelés ne s'ouvrent pas, mais
sans

résultat.

Quelqu'un a t'il une solution pour :
- avoir la boite de dialogue lors du fonctionnement indépendant de
chaque


programme
- ne pas avoir cette boite de dialogue lors que le programme est appelé
par

le programme général.

PS : les variables de contrôle déclaré en Public ne marche pas

Merci d'avance

C.L.