Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

  • Initiateur de la discussion Initiateur de la discussion zeltron
  • 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 !

zeltron

XLDnaute Occasionnel
Bonjour à tout le forum,

J'ai un fichier excel avec un certain nombre d'onglets. A partir du 3eme onglet ( "3eme" étant la position), tous les onglets ont un commandbutton1, sur lequel est affecté une macro.

J'aimerai que grâce à un commandbutton sur mon 2eme onglet ( "Crit"), lorqsque l on clique dessus, cela lance les macros de tous les commandbutton1 de tous les onglets; sachant que ce nombre d'onglet est variable.

Je n'arrive pas à trouver sur le forum une piste.

Jevous joint un fichier exemple.

Pouvez vous m'aider?

Vous en remerciant par avance

Cordialement

Zeltron
 

Pièces jointes

Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Bonjour,

comme ceci

VB:
Sub Macro1()
    For i = 1 To Sheets.Count
        If Sheets(i).Name = "CRIT" Or Sheets(i).Name = "Param" Then GoTo suite
        With Sheets(i).Range("E1").Interior
            .Pattern = xlSolid
            .PatternColorIndex = xlAutomatic
            .Color = 65535
            .TintAndShade = 0
            .PatternTintAndShade = 0
        End With
        Sheets(i).Range("E2").Value = "ZAZA"
suite:
    Next
End Sub
 
Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Bonjour,

essaye ceci :
Code:
Dim i As Integer
For i = 3 To Worksheets.Count
   Worksheets(i).CommandButton1_Click
Next i

attention les procédures doivent être publiques, enlève le "private" devant les déclarations...
et si pas de bouton et ou pas de code... plantage...


bonne journée
@+

Edition : bonjour Gilbert🙂
 
Dernière édition:
Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Bonjour Gilbert et Pierrot,

Merci pour votre retour, je regarde vos propositions et reviens vers vous.

Pierrot, pour être publiques, il faut que j'enlève "le private" devant les déclarations, mais ces dernières peuvent toujours rester au niveau de la feuille, pas de nécessité, de les mettre dans un module??


Merci


Zeltron
 
Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Re,

Pierrot, pour être publiques, il faut que j'enlève "le private" devant les déclarations, mais ces dernières peuvent toujours rester au niveau de la feuille, pas de nécessité, de les mettre dans un module??

oui, mais si même code préférable de le placer dans un modulte standard, tu ne l'auras qu'une seule fois à modifier le cas échéant... comme le propose gilbert🙂 du reste...
 
Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Merci pour vos solutions. Celle de Pierrot me convient mieux car les macro sont différentes suivants les feuilles.
Egalement j'ai du rajouter "activate pour que cela ne buggue pas:

For i = 3 To Worksheets.Count
Worksheets(i).Activate
Worksheets(i).CommandButton1_Click
Next i


Merci encore

Cordialement

Zeltron
 
Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Bonjour,

cela boguait à cause des "select", les supprimer en modifiant comme suit :
Code:
Sub CommandButton1_Click()
    With Range("E1").Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 65535
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With

    Range("E1").FormulaR1C1 = "ZAZA"
End Sub

bon après midi
@+
 
Re : Lancer les macros de "CommandButton1" sur tous les feuilles sauf les 2 premieres

Merci pour vos solutions. Celle de Pierrot me convient mieux car les macro sont différentes suivants les feuilles.
Egalement j'ai du rajouter "activate pour que cela ne buggue pas:

For i = 3 To Worksheets.Count
Worksheets(i).Activate
Worksheets(i).CommandButton1_Click
Next i


Merci encore

Cordialement

Zeltron

et à condition que les deux feuilles qui n'ont pas de boutons soient 1 et 2 ce qui n'est pas le cas dans l'exemple fourni
 
- 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

Discussions similaires

Réponses
7
Affichages
976
Réponses
8
Affichages
1 K
Retour