Plusieurs feuilles une macro...

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

S

Seb

Guest
Bonjour,
est-ce qu'il est possible de mettre la même macro à plusieurs feuilles sans avoir à la recopier dans chaque feuille ?
Merci.
 
Salut Seb

Oui c'est possible, mais faut encore qu'on parle de la même chose, vu le peu d'info que tu laisses...

Exemple
Private Module Sheet1 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Toto
End Sub

Private Module Sheet2 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Toto
End Sub

Private Module Sheet3 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Toto
End Sub

Private Module Sheet4 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Toto
End Sub


Module Standard Module1
Sub Toto ()
MsgBox "Bonjour, je suis la macro Toto, lancée à chque changement de sélection dans les Feuilles"
End Sub


QUOIQUE !!! pour cet évènement précis on pourrait faire ceci aussi :

Private Module ThisWorkbook :
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
MsgBox "Bonjour, moi je suis lancée à chaque changement de sélection dans toutes les feuilles du classeur..."
End Sub


Bonne Appétit
@+Thierry


PS si tu parles d'autre chose que de macros évènementielles je n'ai pas compris ta question succincte.
 
Merci, je vais essayer d'un peu mieux expliquer.
Dans mon classeur, j'ai 2 feuilles qui ont la même macro, en fait ces 2 feuilles sont des copies et ce qui les différencie ce sont les données à l'intérieur. Mais, il y a aussi d'autres feuilles dans le classeur (donc je pense que la deuxième méthode ne marche pas pour moi).
Je ne sais pas ce qu'est une macro évenementielle mais si ce sont des macros qui commencent par "Private Sub Worksheet_SelectionChange(ByVal Target As Range)" alors oui c'est des macros évenementielle.
Pour la première méthode, j'écris
Private Module Sheet1 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Toto
End Sub
dans le code de la feuille 1 mais je ne sais pas où mettre
Module Standard Module1
Sub Toto ()
MsgBox "Bonjour, je suis la macro Toto, lancée à chque changement de sélection dans les Feuilles"
End Sub
?
Merci et bon apétit à toi aussi.
 
Re Seb, le Forum

Pour ce qui est des macro évènementielles, c'est justement l'exemple que je t'ai donné.

Les macros évènementielles, comme leur nom l'indiquent se déclenchent en fonction d'un évènement....

Worksheet_SelectionChange <= Est un évènement (quand on change de sélection dans la feuille en question)

Worksheet_BeforeRightClick <= est un évènement (quand on fait un click droit dans la feuille en question)

Contrairement aux macros évènementielles une macro standard se déclenche soit par activation d'un bouton, soit étant appellée elle-même par une macro évènementielle... (Exemple ci-dessus)

Pour faire une macro normale (non privée dans un private module) il faut la mettre dans un module standard...

Tu dois, au préalable, en créer un :

Dans l'Editeur Visual Basic (VBE) (ALT + F11 depuis Excel)
Soluce 1
Menu => Insertion => Module


Soluce 2
Barre d'outils standard => 2em bouton => Flèche déroulante => Module


Soluce 3
Tu enregistres une macro depuis Excel et tu auras aussi un Module Standard.

Pour voir les modules par l'explorateur de projet, une fois dans VBE tu fais CTRL + R, ou encore Menu => Affichage => Explorateur de Projets

Voilà en espérant que celà puisse t'aider à comprendre.

Bonne aprèm
@+Thierry
 
- 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.

Discussions similaires

Réponses
3
Affichages
147
  • Question Question
XL 2019 B
Réponses
10
Affichages
416
Retour