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

Evenement worksheet_change

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

R

roro145

Guest
Bonjour à tous, voilà, j'ai deux problème avec l'utilisation de l'évènement Worksheet_change :
- j'ai 2 feuilles excel sur lesquelles j'applique (sur chacune) l'évènement en question. Lorsque je modifie la première, l'évènement associé modifie la seconde feuille, jusque là tout va bien, mais voila, la seconde feuille se trouvant modifiée (automatiquement par ma macro), son évènement va se mettre à son tour en action, or je voudrais que ce dernier ne soit actif que pour des modifications manuelles et non 'automatiques'... Comment puis-je faire ?

- Toujours pour l'évènement worksheet_change, lorsqu'il est appliqué à une feuille et que l'on 'vide' une case de cette feuille avec la touche 'suppr', la macro se met en erreur, j'ai réussi à contourner le problème avec un instruction 'on error goto', mais cela me parait bizare qu'il n'y ai que cette solution là, y'en a-t-il une autre ?

si quelqu'un pouvait m'aider, en vous remerciant par avance, ++
 
bonjour roro

il va te falloir passer par un boolean public;

essaye ces codes dans un classeur vierge :

Dans le module de la feuille 1

Private Sub Worksheet_Change(ByVal Target As Range)
bon =
False
Sheets('feuil2').Range(Target.Address) = 'toto'
End Sub


dans le module de la feuille 2
Private Sub Worksheet_Activate()
bon =
True
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If bon Then Target.Interior.ColorIndex = 3
End Sub

Private Sub Worksheet_Deactivate()
bon =
False
End Sub

dans un module standard :

Public bon As Boolean

toute modification de la feuille 1 modfiie la feuille 2 sans déclencher la macro de cette meme feuille 2.

salut
 
Ca marche impec, une fois de plus merci hervé, ce n'est pas la première fois que tu m'aide, je désespérais de trouver une solution ....
Mille merci !!!
 
bonjour roro, le forum

de rien roro 🙂

pour ton souci de on error, le bug doit venir du fait que la macro atteint une seule cellule (target) et que tu lui envoie une selection multiple.

problème classique facilement gérable en testant en début de macro le nombre de cellules sélectionnées. Si tu as plus d'une cellule alors on sort de la macro :

If Target.Count > 1 Then Exit Sub


salut
 
- 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…