Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[RESOLU] Affichage en temps réel de l'etat : Application.enableevents

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

C

Crisky

Guest
Bonjour à tous

Dans un fichier excel, (si je vous assure dans un fichier excel 😉) j'ai plein de macros qui se declenchent sur evenement sheets.change ou selection change

Donc ici et là pour eviter les conflits macro j'ai placé enableevents true et false

Et j'aimerais faire une petit bilan du fonctionnement global du passage de true en false en utilisant le fichier pour voir si je n'ai pas fait d'erreur

Je pensais faire un userform avec une textbox dont la valeur serait application.enable events
Je rend non modal ce userform

Mais je ne sais pas comment faire pour que ce formulaire s'actualise tout seul pendant l'utilsation du reste du fichier

Je suis partie sur cette solution mais il en existe peut-etre d'autres

Je suis ouvert à tout proposition.

Merci pour votre aide
 
Dernière modification par un modérateur:
Re : Affichage en temps réel de l'etat : Application.enableevents

bonjour , nous on veut bien te croire que tu nous assures avoir un fichier excel , mais pour comprendre ton problème iil serait bien d'avoir un morceau de ton fichier aussi avec ta demande et ou et comment tu veux que cela se produise
merci ( pas de données confidentielles non plus )
a te lire
 
Re : Affichage en temps réel de l'etat : Application.enableevents

Desole, vu de mon cote mon texte semblait clair mais c'est vrai que rien ne remplace en bon exemple concret

Dans le fichier joint
Si les macros sont activées

A l'ouverture vous avez un userform qui indique l'etat de application.enableevents (true)

Quand vous changez une cellule sur la feuille ma macro change le application enableevents en false

Ce que j'aurais aimé : que le userform se reactualise dès que l'etat application.enableevents a changé.

Ce n'est pas le cas : si je ferme le usrform et que je l'ouvre à nouveau l'evenement usrform.initialize affiche l'etat

Mais je suis obligé de fermer et rouvrir, je ne sais pas comment faire pour en gros placer un espion sur applicationenableevents tout au long de l'utilisation du fichier
 

Pièces jointes

Re : Affichage en temps réel de l'etat : Application.enableevents

bonjour,

une solution : à chaque modification de Application.EnableEvents rajouter cette ligne de code:
Code:
usrfrm.caseetat = Application.EnableEvents

bonne suite
 
Re : Affichage en temps réel de l'etat : Application.enableevents

Merci c'etait une tres bonne idée, un peu fastidieuse mais en testant je m'apercois que le userform ne se met pas à jour tout seul
 
Re : Affichage en temps réel de l'etat : Application.enableevents

re,

Fastidieux : je dois avoir 40 macros dans mon fichier original mais vu que cela fonctionne je vais le faire

En effet apres retest de ta part et que tu ai dis que cela marchait, je me suis dit : j'ai surement fait une erreur

Et oui j'ai betement oublier de mettre le nom de l'objet userform auquel se rattache la variable caseetat

Donc cela fonctionne parfaitement

Merci Paf
 
Re : Affichage en temps réel de l'etat : Application.enableevents

Bonjour à tous.


(...)

Fastidieux : je dois avoir 40 macros dans mon fichier original mais vu que cela fonctionne je vais le faire

(...)
Je n'ai pas de meilleure solution, mais on peut aller vite pour l'appliquer : il suffit d'utiliser Edition/Remplacer dans l'éditeur de code.
Demander le remplacement de​
VB:
Application.EnableEvents = True
par​
VB:
Application.EnableEvents = True: usrfrm.caseetat = Application.EnableEvents
dans l'ensemble du projet.

Une deuxième passe en remplaçant True par False, et le tour est joué.​


Bon courage.


ℝOGER2327
#6955


Jeudi 5 As 141 (Saint Van Meegeren, faussaire - fête Suprême Quarte)
17 Brumaire An CCXXII, 6,8982h - cresson
2013-W45-4T16:33:20Z
 
Re : [RESOLU] Affichage en temps réel de l'etat : Application.enableevents

Tres bon conseil, je le testerais demain

les " : " dans ton code servent simuler 2 lignes de code ?
 
Re : [RESOLU] Affichage en temps réel de l'etat : Application.enableevents

Re...



Tres bon conseil, je le testerais demain

les " : " dans ton code servent simuler 2 lignes de code ?
À peu près : En fait, les deux lignes de code sont condensées en une seule. Au lieu de​
VB:
Application.EnableEvents = True
usrfrm.caseetat = Application.EnableEvents
on obtient :​
VB:
Application.EnableEvents = True: usrfrm.caseetat = Application.EnableEvents
Ça ne pose aucun problème lors de l'exécution.​


Bonne soirée.


ℝOGER2327
#6956


Jeudi 5 As 141 (Saint Van Meegeren, faussaire - fête Suprême Quarte)
17 Brumaire An CCXXII, 7,2131h - cresson
2013-W45-4T17:18:41Z
 
- 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.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…