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 basée sur la valeur de la cellule dans Excel?

Supposons que j'ai plusieurs codes de macro dans mon classeur, et maintenant, je veux exécuter ces codes basés sur la valeur de la cellule. Cet article, je vais parler de plusieurs situations que vous pourriez subir dans votre travail quotidien lors de l'utilisation d'Excel.

Exécuter ou déclencher une macro si la valeur de la cellule est supérieure ou inférieure à une valeur spécifique avec le code VBA

Exécuter ou déclencher une macro si la valeur de la cellule est égale à du texte spécifique avec le code VBA

Onglet Office Activer l'édition et la navigation par onglets dans Office, et simplifiez grandement votre travail ...
Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%
  • Réutiliser n'importe quoi: Ajoutez les formules, graphiques et autres éléments les plus utilisés ou les plus complexes à vos favoris et réutilisez-les rapidement.
  • Plus que le texte 20 comprend: Extraire le numéro de la chaîne de texte; Extraire ou supprimer une partie des textes; Convertissez les nombres et les devises en mots anglais.
  • Fusionner les outils: Plusieurs classeurs et feuilles en un; Fusionner plusieurs cellules / lignes / colonnes sans perdre de données; Fusionner les lignes en double et la somme.
  • Outils Split: Fractionner les données en plusieurs feuilles en fonction de la valeur; Un classeur pour plusieurs fichiers Excel, PDF ou CSV; Une colonne à plusieurs colonnes.
  • Coller Sauter Lignes cachées / filtrées; Compte et somme par couleur de fond; Envoyez des e-mails personnalisés à plusieurs destinataires en bloc.
  • Super filtre: Créez des schémas de filtrage avancés et appliquez-les à toutes les feuilles. Trier par semaine, jour, fréquence et plus; Filtre en gras, formules, commentaires ...
  • Plus que de puissantes fonctionnalités 300; Fonctionne avec Office 2007-2019 et 365; Prend en charge toutes les langues; Déploiement facile dans votre entreprise ou organisation.

flèche bleue droite bulle Exécuter ou déclencher une macro si la valeur de la cellule est supérieure ou inférieure à une valeur spécifique avec le code VBA


Par exemple, si la valeur de la cellule A1 est comprise entre 10 et 50, exécutez macro1 et, si la valeur est supérieure à 50, exécutez macro2. Pour résoudre ce travail dans Excel, veuillez appliquer le code VBA suivant.

1. Cliquez avec le bouton droit sur l'onglet de feuille que vous souhaitez exécuter la macro en fonction d'une valeur de cellule, 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 si la valeur de la cellule est supérieure ou inférieure à:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If IsNumeric(Target) And Target.Address = "$A$1" Then
        Select Case Target.Value
        Case 10 To 50: Macro1
        Case Is > 50: Macro2
        End Select
    End If
End Sub

Doc run macro basé sur la valeur de la cellule 1

Note: Dans le code ci-dessus:

A1 est la cellule qui contient la valeur spécifique sur laquelle vous voulez exécuter la macro;

Cas 10 à 50: Macro1: cela signifie que si la valeur est comprise entre 10 et 50, exécutez Macro1;

Le cas est> 50: Macro2: cela signifie que si la valeur est supérieure à 50, exécutez Macro2.

Veuillez modifier les noms et les critères de ces macros en fonction de vos besoins, et vous pouvez également ajouter d'autres critères après Étuie scripts.

2. Puis enregistrez et fermez cette fenêtre de code, maintenant, lorsque la valeur que vous entrez est comprise entre 10 et 50 dans la cellule A1, Macro1 sera déclenchée, si la valeur entrée est supérieure à 50, Macro2 est exécuté.


flèche bleue droite bulle Exécuter ou déclencher une macro si la valeur de la cellule est égale à du texte spécifique avec le code VBA

Si vous voulez déclencher la macro basée sur du texte spécifique dans une cellule, par exemple, pour exécuter macro1 si le texte "Delete" est entré, et exécutez macro2 si le texte "Insert" est tapé. Le code suivant peut vous faire une faveur.

1. Cliquez avec le bouton droit sur la feuille que vous souhaitez exécuter la macro en fonction de la valeur de la cellule, 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 si la valeur de la cellule est supérieure ou inférieure à:

Sub worksheet_change(ByVal target As Range)
Set target = Range("A1")
If target.Value = "Delete" Then
 Call Macro1
End If
If target.Value = "Insert" Then
Call Macro2
End If
End Sub 

Doc run macro basé sur la valeur de la cellule 2

Note: Dans le code ci-dessus, "Effacer" et "insérer"Sont les textes de la cellule sur lesquels vous voulez exécuter des macros, et Macro1 et Macro2 sont les macros que vous souhaitez exécuter en fonction du texte. S'il vous plaît, changez-les selon vos besoins.

2. Puis enregistrez ce code et fermez la fenêtre, maintenant, lorsque vous entrez le texte "Delete" dans la cellule A1, macro1 est déclenché, si le texte "Insert" est entré, macro2 sera exécuté.


Articles Liés:

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

Comment exécuter macro automatiquement avant d'imprimer 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?


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

Office Tab apporte une interface à onglets à Office et simplifie grandement votre travail

  • Activer l'édition par onglets et la lecture dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit le nombre de clics de souris pour vous chaque jour!
fond officetab
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.
    Mani Chandran · 1 years ago
    I am working with result analysis. In this case, the data in the excel will be like this Name, Sub name , Crade. Now,i want to find the all pass or successful candidate numbers from the result. How can i get it. Because, i am having 6 different subject and their results in single excel sheet. If student failed in one subject he is not be a successful student. How do remove their name in all the subjects.
  • To post as a guest, your comment is unpublished.
    Siva · 1 years ago
    Requirement:
    Based on the selection
    There will be a dropdown list for following three properties of the same dimension as below.
    And there will be three derived cells which will be derived from the cells (G46,G47 and G48)

    Scenario:
    If I select a value from cost center drop down list , cost center derived cell(K46) should be populated with value selected from cost center drop down list(H46) and the other two derived cells (K47 and k48) should become blank.

    Similarly if I select value from Budget manager drop down list, Budget manager derived cell should be populated with value selected from Budget manager drop down list(H47) and the other two derived cells (K45 and k48) should become blank.
  • To post as a guest, your comment is unpublished.
    Richard · 2 years ago
    Hi, how about if you want to run a macro based on two cells? One cell being text based and the other cell having numerical values? Then you would want to call a macro if the two cells show exactly what you want, like "YES" for the first cell and 1 for the second cell, if not a pop box would show saying "Not Found".