Si vous souhaitez déclencher une macro automatiquement après la sélection d’une valeur dans une cellule (via liste déroulante ou non), il est nécessaire de suivre les étapes suivantes :
- Sélectionner le module correspondant à la feuille/onglet du classeur (module déjà existant par defaut)
- Insérer dedans du code VBA qui detectera le changement de valeur et appelera la macro VBA à éxécuter
- Créer dans un module à part la macro VBA à appeler
Ci-dessous le code VBA à insérer dans le module de la feuille :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
Call MaMacroVBA
End If
End Sub
Il suffit juste de changer la celulle à surveiller, ainsi que la macro VBA à appeler.
3 commentaires sur “Comment déclencher automatiquement une macro VBA lors du changement de valeur d’une cellule ?”
Bonjour, J’ai créer une macro qui enregistre les dimensions d’une forme dans des cellules. J’aimerais la déclencher lorsque l’on modifie la forme sans avoir à cliquer sur une cellule à coté. du coup sans passer par Worksheet_Change
Bonjour, effectivement c est un cas different, si il ne s’agit pas du changement de valeur d’une cellulle. C est une bonne question. Je ne connais malheureusement pas la solution, je n’ai pas vu de piste à étudier en faisant une recherche rapide sur Internet.
Bonjour,
Cette fonction marche quand on modifie directement la valeur la cellule A1 dans la feuille concernée mais comment faire quand on veut que le MsgBix affiche un message quand la valeur de A1 est modifiée suite au résultat du calcul de B1 + C1 sur la même feuille voir sur une autre feuille?