De: "Laurent Longre" Objet: Re: Comment désactiver une procédure évènement ? Date: lundi 4 octobre 1999 18:25 Philippe, Application.EnableEvents s'applique uniquement aux événements du tableur, pas des UserForms. Pour désactiver les événements attachés aux contrôles de UserForm, je définis pour ma part une variable booléenne de niveau module, contenant True ou False selon que l'on veut désactiver les événements ou non, et qui est testée au début de chaque procédure événementielle. Par exemple, avec un UserForm contenant un ToggleButton (qui affiche "Zaza est parmi nous!" quand il est sur False) et un bouton CommandButton1 qui "désactive" ToggleButton1_Click, met le ToggleButton sur False, puis "réactive" ToggleButton1_Click, cad met le contrôle sur False tout en évitant l'affichage du message: Dim NoEvents As Boolean Private Sub CommandButton1_Click() NoEvents = True ToggleButton1 = False NoEvents = False End Sub Private Sub ToggleButton1_Click() If NoEvents Then Exit Sub If Not ToggleButton1 Then MsgBox "Zaza est parmi nous !" End Sub Cordialement, Laurent Philippe wrote: > > Re-Bonjour, > > Je souhaiterais éviter qu'une procédure évènement installée dans le code > d'une feuille (WorksheetX), ne se produise dans certains cas. > > Par exemple: j'ai installé plusieurs ToggleButtons sur cette feuille. Chacun > lance une procédure (inscrite dans un moduleY) quand il passe d'un état > False à un état True et une autre procédure (inscrite dans le moduleY > également) quand il revient à son état initial (false). Jusque là tout va > bien. > > Cependant, en fin d'utilisation, je souhaite remettre l'ensemble de mes > contrôls dans leur état initial en vue d'une prochaine utilisation > (ToggleButtons à false) sans pour autant lancer les procédures qui sont > attachées au passage de l'état True à l'état False. > > J'ai éssayé Application.EnableEvents=False, sans résultat. Peut-être > sagit-il de ma part d'une mauvaise utilisation de cette instruction, > pouvez-vous m'indiquer (si c'est celle-ci qui doit être utilisée) comment et > où la placer ? > > Merci d'avance pour vos réponses. > > Philippe > peygonnet@wanadoo.fr