Note: The other languages of the website are Google-translated. Back to English
English English
  • Documents
  • Excel
  • Comment exécuter une macro en fonction de la valeur sélectionnée dans la liste déroulante dans Excel?

Comment exécuter une macro en fonction de la valeur sélectionnée dans la liste déroulante dans Excel?

Exécuter des macros en cliquant sur le bouton de commande est une tâche courante dans Excel, mais avez-vous déjà essayé d'exécuter les codes macro en fonction de la valeur sélectionnée dans la liste déroulante? Cela signifie que lorsque vous choisissez un élément dans la liste déroulante, la macro spécifique sera déclenchée à la fois. Cet article présente un code utile pour résoudre ce problème.

Exécuter la macro en fonction de la valeur sélectionnée dans la liste déroulante avec le code VBA


flèche bleue bulle droite Exécuter la macro en fonction de la valeur sélectionnée dans la liste déroulante avec le code VBA

Il n'y a pas de moyen direct de terminer cette tâche, mais, le code VBA suivant peut vous aider, procédez comme suit:

1. Tout d'abord, créez une liste déroulante selon vos besoins, voir capture d'écran:

doc exécuter la macro à partir de la liste déroulante 1

2. Cliquez ensuite avec le bouton droit sur l'onglet de la feuille contenant le menu déroulant que vous souhaitez utiliser, puis choisissez Voir le code dans le 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 la macro en fonction de la valeur sélectionnée dans la liste déroulante:

Private Sub Worksheet_Change(ByVal Target As Range)
	If Not Intersect(Target, Range("E1")) Is Nothing Then
	    Select Case Range("E1")
	        Case "Insert Blank rows": Macro1
	        Case "Hide All Sheets": Macro2
            Case "Convert to Date": Macro3
	    End Select
	End If
	End Sub

doc exécuter la macro à partir de la liste déroulante 2

Notes: Dans le code ci-dessus, E1 est la cellule contient la liste déroulante, modifiez les noms de macro et les valeurs de la liste déroulante selon vos besoins.

3. Et puis enregistrez et fermez cette fenêtre de code, maintenant, lorsque vous sélectionnez l'élément Insérer des lignes vides dans la liste déroulante, Macro1 sera déclenchée, et ainsi de suite…


Articles Liés:

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

Comment exécuter une macro en fonction de la valeur de la cellule dans Excel?

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


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité en
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 e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • 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 par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus que
    300
    Caractéristiques puissantes
    . 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
    30
    -jour d'essai gratuit. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets 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é en
    50 %
    , et réduit chaque jour des centaines de clics de souris !
bas de cabine
Commentaires (6)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
efectivamente funciona pero quiero aplicarlo en varias celdas, que variable debo cambiar ?
Ce commentaire a été minimisé par le modérateur sur le site
Existe-t-il un moyen d'utiliser le code VBA pour le faire dans Access ? Merci
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour!

Lors de l'application de la vente d'une erreur de compilation : La déclaration de la procédure ne coïncide pas avec la description de l'événement ou la procédure qui correspond au nombre mismo. Que quiere decir eso? que debo cambiar/arreglar ? Gracias
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour. Seriez-vous capable de faire une macro à partir du menu déroulant pour le suivant : pour exécuter une macro et enregistrer des feuilles séparées pour chaque élément du menu déroulant ? Dans votre cas, cela devrait ressembler à ceci:
1. Vous exécutez une macro, puis vous avez séparé une feuille avec des valeurs pour "Insérer des lignes vides" enregistrées dans le dossier désigné
2. Feuille séparée avec des valeurs pour "Masquer toutes les feuilles :" enregistrées dans le dossier désigné
3. Feuille séparée avec des valeurs pour « Convertir en date » enregistrées dans le dossier désigné.
4. La macro est maintenant terminée


Principalement, je peux définir tout cela, sauf que la macro change automatiquement la sélection dans le menu déroulant ?


Merci


Ivan
Ce commentaire a été minimisé par le modérateur sur le site


PREMIER CODE FONCTIONNE PARFAITEMENTPrivate Sub Worksheet_Change (Cible ByVal en tant que plage)
Si ce n'est pas l'intersection (cible, plage ("D1")) n'est rien alors
Sélectionnez la plage de cas ("D1")
         Cas "0.5": Moitié
         Cas "1": Un
         Cas "1.25": OneTwentyFive
End Select
Si fin
End Sub
DEUXIÈME CODE NE FONCTIONNE PAS (veuillez corriger ci-dessous)
Changement de sous-marin privé (cible ByVal en tant que plage)
Si ce n'est pas l'intersection (cible, plage ("D2")) n'est rien alors
Sélectionnez la plage de cas ("D2")
         Cas "9.53": neuf virgule cinq trois
End Select
Si fin
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
A co jeśli potrzebuję aby po uruchomieniu makra wszystkie listy rozwijane ustawiły się na jeden z wyborów z listy? W sumie odwrotnie do tego co jest w poście. Czy istnieje na à łatwiejszy sposób ?
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés

Nous suivre

Copyright © 2009 - www.extendoffice.com. | Tous les droits sont réservés. Alimenté par ExtendOffice. | | Plan du site
Microsoft et le logo Office sont des marques commerciales ou des marques déposées de Microsoft Corporation aux États-Unis et / ou dans d'autres pays.
Protégé par Sectigo SSL