OVH Cloud OVH Cloud

Macro Private

13 réponses
Avatar
j
Bonjour

Comment faire pour appeler une macro Private
dans une autre macro normal

Merci

3 réponses

1 2
Avatar
LSteph
...mais si tu y tiens voilà un exemple simplissime

au lieu d'écrire dans la private sub
MsgBox "bonjour"


'dans module1
Sub mamacro()
MsgBox "bonjour"
End Sub

'dans le code de la feuille
Private Sub CommandButton1_Click()
Call mamacro
End Sub


'lSteph

a écrit :
heu !!!!!!!
T'as pas un exemple Please ???
Merci

"LSteph" a écrit dans le message de news:
u%235j%
Bonjour,

quel genre de private sub..?

Tu peux procèder inversement...:
càd garder ta Private Sub si tu te sers d'un évennement
mais lui donner sa routine via call sur une sub d'un module standard!

Ainsi le même travail pourra être appelé tantôt sur un évennement tantôt
depuis une autre macro si besoin.

@+

--
lSteph

Cordialement
a écrit :
merci,
Mais Hic !! justement je ne suis pas dans le meme module
et je peux pas tout mettre dans un module
je vais donc etre obligé de rester dans une procedure non Private !!

Bonsoir



"Papyjac" a écrit dans le message de
news:
Bonjour

Tu peux appeler la procédure par Call procédure si tu est dans le même
module

--
Papyjac


"" a écrit :

Bonjour

Comment faire pour appeler une macro Private
dans une autre macro normal

Merci














Avatar
LSteph
Bonsoir,

je remimisse, c'est une bonne astuce ..mais

une autre façon me paraît simple et claire
(même que je devrais l'appliquer plus souvent):

Ecrire chaque sub et routine une seule fois dans un module standard qui
convient et si ensuite on a besoin de les appeler sur un évennement ou
depuis un autre module un simple call fait l'affaire.Le code restera
plus léger et facile à lire et si par suite on doit déplacer ou
renommer des feuilles celles qui restent continueront à réfèrer à la sub
du module au lieu de revoir le code pour toutes les feuilles orphelines.

Cordialement.

--
lSteph

Papyjac a écrit :
Bonjour et pounet

Mais oui, poupounet à raison. effectivement Run "Procédure"
En fait, je pensais à Call Module.Procédure mais la procédure ne doit pas
être private.




Avatar
j
Merci a tous super !!! j'ai le choix
Bonne soirée


"LSteph" a écrit dans le message de news:

...mais si tu y tiens voilà un exemple simplissime

au lieu d'écrire dans la private sub
MsgBox "bonjour"


'dans module1
Sub mamacro()
MsgBox "bonjour"
End Sub

'dans le code de la feuille
Private Sub CommandButton1_Click()
Call mamacro
End Sub


'lSteph

a écrit :
heu !!!!!!!
T'as pas un exemple Please ???
Merci

"LSteph" a écrit dans le message de news:
u%235j%
Bonjour,

quel genre de private sub..?

Tu peux procèder inversement...:
càd garder ta Private Sub si tu te sers d'un évennement
mais lui donner sa routine via call sur une sub d'un module standard!

Ainsi le même travail pourra être appelé tantôt sur un évennement tantôt
depuis une autre macro si besoin.

@+

--
lSteph

Cordialement
a écrit :
merci,
Mais Hic !! justement je ne suis pas dans le meme module
et je peux pas tout mettre dans un module
je vais donc etre obligé de rester dans une procedure non Private !!

Bonsoir



"Papyjac" a écrit dans le message
de news:
Bonjour

Tu peux appeler la procédure par Call procédure si tu est dans le même
module

--
Papyjac


"" a écrit :

Bonjour

Comment faire pour appeler une macro Private
dans une autre macro normal

Merci
















1 2