Lancer 6 macros différentes, l'une après l'autre, grace à un seul bouton

  • Initiateur de la discussion Initiateur de la discussion pascale31
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

pascale31

Guest
Bonjour,

Voici ma recherche. Je voudrais lancer 6 macros différentes en cliquant 6 fois sur le même bouton.
Premier clic lance macro1
Second clic lance macro2
etc...
Sixième clic lance macro6

Si on clic une septième fois, c'est interprété comme le premier clic d'une nouvelle série de 6.
En fait, je n'y arrive pas avec un seul bouton, car à chaque clic ça relance la macro1 au lieu de passer à la macro2 et etc.

Avez-vous une idée ?
Merci d'avance.
 
Re : Lancer 6 macros différentes, l'une après l'autre, grace à un seul bouton

Bonjour à tous,

Bienvenue sur XLD

Il est d'usage de déposer un fichier pour une tentative d'aide optimisée.
Si tes macros portent bien le nom Macro1, Macro2....

Fais un bouton qui les appelle :
Call Macro1
Call Macro2...

A + à tous
 
Re : Lancer 6 macros différentes, l'une après l'autre, grace à un seul bouton

Bonsoir a essayé
dans un module /affecté au bouton de commande
Dim NbClic As Long

Sub Test()

NbClic = NbClic + 1
If NbClic = 1 Then macro1
If NbClic = 2 Then macro2
If NbClic = 3 Then macro3
If NbClic = 4 Then macro4
If NbClic = 5 Then macro5
If NbClic = 6 Then macro6

If NbClic = 6 Then NbClic = 0
End Sub
A++
 
Re : Lancer 6 macros différentes, l'une après l'autre, grace à un seul bouton

Bonjour Pascale, roro, Jean-Claude🙂

regarde ceci, à adapter, exemple avec 2 macros :

dans le module de la feuille où se trouve le bouton :
Code:
Option Explicit
Sub CommandButton1_Click()
Static b As Byte
b = IIf(b = 2, 1, b + 1)
Application.Run "macro" & b
End Sub

les macros dans un module standard :
Code:
Option Explicit
Sub macro1()
MsgBox "macro1"
End Sub
Sub macro2()
MsgBox "macro2"
End Sub

bon après midi
@+
 
Re : Lancer 6 macros différentes, l'une après l'autre, grace à un seul bouton

Pour la capitalisation, voici ce que j'ai fait.
1 bouton avec une macro attachée

Sub mamacro()

NbClic = NbClic + 1
If NbClic = 1 Then Application.Run "ligne1"
If NbClic = 2 Then Application.Run "ligne2"
If NbClic = 3 Then Application.Run "ligne3"
If NbClic = 4 Then Application.Run "ligne4"
If NbClic = 5 Then Application.Run "ligne5"
If NbClic = 6 Then Application.Run "ligne6"

If NbClic = 6 Then NbClic = 0

End Sub

Bon, si on ne fait que 4 clics et qu'on veut repartir à zéro, ça ne gère pas ce cas automatiquement. Il faut re-cliquer 2 fois et ensuite on est calé sur le cas "Premier clic lance Macro1". Mais pour le moment ça me va comme cela.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour