appeler une macro depuis une autre, puis revenir à la macro appelante

appeler une macro depuis une autre, puis revenir à la macro appelante - VB/VBA/VBS - Programmation

Marsh Posté le 21-09-2007 à 10:13:33    

bonjour,
 
dans VBA Excel, je sais appeler une macro depuis une autre avec la fonction "call".
mais j'aimerais pouvoir (une fois cette macro appelée éxécutée) revenir à la macro appelante.
 
voici un exemple simple : j'ai une macro "mère" à partir de laquelle j'appelle différentes macros, et à la fin de chacune d'elles, que VB revienne au point de départ :
 
Sub Macro_générale()
 
call macro_1
MsgBox "la 1e macro est terminée"
 
call macro_2
MsgBox "la 2e macro est terminée"
 
End Sub
 
ce qui me manque, c'est le code à taper à la fin des macro_1 et macro_2 pour revenir à Macro_générale à l'endroit qui suit le lancement des "sous macros".
(attention, il ne faut pas que je revienne au début de la macro appelante, mais à l'endroit du lancement)
 
un grand merci d'avance à ceux qui se pencheront sur mon cas.
BP :sol:

Reply

Marsh Posté le 21-09-2007 à 10:13:33   

Reply

Marsh Posté le 23-09-2007 à 16:56:27    

Salut !
 
Bah écoutes, je comprend pas ton problème, parce
que si tu fais :
 

Code :
  1. Sub Macro_mère()
  2.     Msgbox "Mère ok."
  3.     Call Fille
  4.     Msgbox "Fille ok."
  5. End sub
  6. Sub Fille()
  7.    Msgbox "Fille en cours."
  8. End Sub


 
Tu obtiendras effectivement ce que  
tu veux, c'est-à-dire :
Mère ok.
Fille en cours.
Fille ok.
 
et pas :
Mère ok.
Fille en cours.
 
Ni même :
 
Mère ok.
Fille en cours.
Mère ok.
Fille ok.
 
Voilà, voilà ! :D

Reply

Marsh Posté le 24-09-2007 à 09:12:05    

bonjour et merci de tes lumières.
 
grâce à toi, je sais maintenant que le retour à la macro appelante est tout bêtement... automatique.
 
je me sens bien couillon sur ce coup là, je n'avais pas imaginé que c'était aussi simple, du coup, je n'avais même pas testé la bonne méthode, je cherchais un code à taper à la fin de la macro "fille" pour revenir chez maman.
 
pb résolu  :jap:

Reply

Marsh Posté le 24-09-2007 à 11:46:44    

;)  
 
C'est vrai que quand c'est logique, ça surprend !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed