Interdire lancement macro si une macro est déjà en cours

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

davidm

XLDnaute Nouveau
Bonjour,

Je souhaiterais savoir si il est possible d’interdire le lancement d’une macro si une macro est déjà en cours.

Par exemple : macro évènementielle "change"

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox ("Essai")
Sheets("Feuil1").Range("A1") = "essai"
End Sub

Dans le code ci-dessus, le fait de modifier la valeur de la case A1 relance la macro (un certain nombre de fois, puis s’arrête).

Merci d’avance pour votre aide

David
 
Re : Interdire lancement macro si une macro est déjà en cours

Bonjour,

regarde peut etre ceci
Code:
Application.EnableEvents = False
On Error GoTo fin
 MsgBox ("Essai")
 Sheets("Feuil1").Range("A1") = "essai"
fin:
Application.EnableEvents = True
  End Sub
bon après midi
@+
 
Re : Interdire lancement macro si une macro est déjà en cours

Bonjour David, Pierrot, bonjour le forum,

Le problème avec Application.EnableEvents est que si le code plante alors qu'il a été définit à False, les macros événementielles de fonctionnent plus. Pour éviter ça je préfère l'utilisation d'une variable boléenne :
Code:
Private test As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
If test = True Then test = False: Exit Sub
test = True
MsgBox ("Essai")
Sheets("Feuil1").Range("A1") = "essai"
End Sub
 
- 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
9
Affichages
450
Réponses
4
Affichages
519
Réponses
14
Affichages
575
Réponses
7
Affichages
761
Retour