Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment exécuter une macro lorsque la valeur de la cellule change dans Excel?

Normalement, dans Excel, nous pouvons appuyer sur la touche F5 ou sur le bouton Exécuter pour exécuter le code VBA. Mais, avez-vous déjà essayé d'exécuter le code de macro spécifique quand une valeur de cellule change? Cet article, je vais vous présenter quelques astuces rapides pour faire face à ce travail dans Excel.

Exécuter ou appeler une macro lorsqu'une valeur de cellule spécifique change avec le code VBA

Exécuter ou appeler une macro lorsqu'une valeur de cellule change dans une plage avec du code VBA


Supprimer toutes les macros de plusieurs classeurs:

Kutools for Excel's Batch Supprimer toutes les macros utilitaire peut vous aider à supprimer toutes les macros de plusieurs classeurs selon vos besoins. Télécharger et tester gratuitement Kutools for Excel maintenant!

doc exécute la macro si la cellule change 3

Kutools for Excel: avec plus que 200 compléments Excel pratiques, libre d'essayer sans limitation dans les jours 60. Téléchargez et essai gratuit maintenant!


flèche bleue droite bulle Exécuter ou appeler une macro lorsqu'une valeur de cellule spécifique change avec le code VBA


Pour exécuter un code de macro en changeant une valeur de cellule, le code VBA suivant peut vous faire une faveur, s'il vous plaît faites comme ceci:

1. Cliquez avec le bouton droit sur l'onglet de feuille que vous souhaitez exécuter la macro si la valeur de la cellule change, puis choisissez Voir le code à partir du menu contextuel, et dans le Microsoft Visual Basic pour les applications fenêtre, copiez et collez le code suivant dans le module vide:

Code VBA: exécutez la macro lorsque la valeur de la cellule change:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$1" Then
        Call Mymacro
    End If
End Sub

doc exécute la macro si la cellule change 1

Note: Dans le code ci-dessus, A1 est la cellule spécifique sur laquelle vous voulez exécuter le code, Mymacro est le nom de la macro que vous voulez exécuter. S'il vous plaît, changez-les selon vos besoins.

2. Et puis enregistrez et fermez la fenêtre de code, maintenant, lorsque vous entrez ou modifiez la valeur dans la cellule A1, le code spécifique sera déclenché à la fois.


flèche bleue droite bulle Exécuter ou appeler une macro lorsqu'une valeur de cellule change dans une plage avec du code VBA

Si vous souhaitez exécuter ou déclencher une macro lorsque la valeur d'une cellule change dans une plage de cellules, le code suivant peut vous aider.

1. Cliquez avec le bouton droit sur l'onglet de feuille que vous souhaitez exécuter la macro si la valeur de la cellule change, puis choisissez Voir le code à partir du menu contextuel, et dans le Microsoft Visual Basic pour les applications fenêtre, copiez et collez le code suivant dans le module vide:

Code VBA: Exécuter une macro lorsque la valeur d'une cellule change dans une plage:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:B100")) Is Nothing Then
Call Mymacro
End If
End Sub

doc exécute la macro si la cellule change 2

Note: Dans le code ci-dessus, A1: B100 est les cellules spécifiques sur lesquelles vous voulez exécuter le code, Mymacro est le nom de la macro que vous voulez exécuter. S'il vous plaît, changez-les selon vos besoins.

2. Et puis enregistrez et fermez la fenêtre de code, maintenant, lorsque vous entrez ou modifiez la valeur dans n'importe quelle cellule de A1: B100, le code spécifique sera exécuté immédiatement.


Articles Liés:

Comment exécuter macro automatiquement avant d'imprimer dans Excel?

Comment exécuter une macro basée sur la valeur de la cellule dans Excel?

Comment exécuter macro basé sur la valeur sélectionnée dans la liste déroulante dans Excel?

Comment exécuter une macro en cliquant sur des liens hypertexte dans Excel?

Comment exécuter une macro lorsque la feuille est sélectionnée à partir d'un classeur?



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    roberto · 5 months ago
    Hola buenas tardes
    quisiera saber el codigo para que se active una macro cuando cambia el valor de una celda de una columna, pero este valor cambia por formula,sin que el usuario introduzca ningun valor.
  • To post as a guest, your comment is unpublished.
    DrCartwright · 7 months ago
    The macro that you are calling where do you have this located? I have mine in the Modules folder but when I put any value in any cell of the worksheet I get a Compile error saying:
    Expected variable or procedure, not module.

    Please help.
    • To post as a guest, your comment is unpublished.
      skyyang · 6 months ago
      Hi, DrCartwright,
      Sorry for replying to you so late.
      Yes, as you said, the macro code should be located into the Module, and you need to change the code name to your own name as following screenshot shown:
  • To post as a guest, your comment is unpublished.
    Kevin · 8 months ago
    Hey, useful code. I was thinking if it was possible to insert a ring around the cells that are changed as they are changed? And reset the circles every Monday ?
    • To post as a guest, your comment is unpublished.
      skyyang · 8 months ago
      Hello, Kevin,
      Here is no idea for solving your problem, if you have any good solution, please comment here.
  • To post as a guest, your comment is unpublished.
    Tom · 1 years ago
    Worked great for me! My dilemma is that I want it to be a relative reference macro and there is a difference between hitting enter to save the entry and delete to clear the cell.
  • To post as a guest, your comment is unpublished.
    Andrew Cothliff · 1 years ago
    This worked first time for me using data validation list which displays text based on the list selection.