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 créer des zones de liste en cascade dynamique dans Excel?

Vous savez peut-être comment créer une liste déroulante de validation en cascade dans Excel. Toutefois, comment créer des zones de liste en cascade dynamique dans Excel? Cet article présente une méthode VBA pour l'obtenir.

Créer des zones de liste en cascade dynamique avec du 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.

Créer des zones de liste en cascade dynamique avec du code VBA


Comme illustré ci-dessous, vous devez créer une zone de liste parent contenant les valeurs uniques de la colonne Boisson et afficher toutes les valeurs correspondantes dans la deuxième zone de liste en fonction de la sélection dans la zone de liste parent. Le code VBA suivant vous aide à l'atteindre. S'il vous plaît faire comme suit.

1. Premièrement, vous devez extraire toutes les valeurs uniques de la colonne Boisson. Sélectionnez une cellule vide, entrez la formule matricielle =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") dans le Barre de formule, puis appuyez sur Ctrl + décalage + Entrer clé. Ensuite, faites glisser le Poignée de remplissage pour obtenir toutes les valeurs uniques. Voir la capture d'écran:

Note: Dans la formule, $A$2:$A$11 est la plage que vous allez extraire des valeurs uniques. J1 est la cellule ci-dessus où se trouve votre formule.

Pointe: Si la formule est trop difficile à retenir et à gérer, le Sélectionnez les cellules dupliquées et uniques utilité de Kutools for Excel sera un bon choix pour vous permettre d'extraire rapidement toutes les valeurs uniques d'une colonne.

Veuillez sélectionner la colonne contenant les valeurs uniques que vous extrayez. Activez ensuite l'utilitaire en cliquant sur Kutools > Sélectionner > Sélectionnez les cellules dupliquées et uniques. Dans le Sélectionnez les cellules dupliquées et uniques boîte de dialogue, sélectionnez le Tous uniques (y compris les doublons 1st) option et cliquez sur le OK bouton. Ensuite, toutes les valeurs uniques sont sélectionnées dans la colonne. Veuillez les copier et les coller à un nouvel endroit. Voir la capture d'écran:

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!

2. Insérer deux zones de liste séparément en cliquant Développeur > insérer > Zone de liste (contrôle ActiveX). Voir la capture d'écran:

3. Cliquez avec le bouton droit sur la zone de liste parent et sélectionnez Propriétés dans le menu contextuel. dans le Propriétés boîte de dialogue, modifiez le (Nom) champ à Boisson ou un autre nom que vous avez besoin, entrez la plage de cellules contient les valeurs uniques extraites dans le ListFillRange champ et fermez le dialogue.

4. Répétez l'étape 3 pour changer la deuxième zone de liste (Nom) champ à Article dans le Propriétés boite de dialogue.

5. Cliquez avec le bouton droit sur l'onglet de la feuille et sélectionnez Voir le code dans le menu contextuel. Copiez ensuite le code VBA dans la fenêtre Code. Voir la capture d'écran:

Code VBA: Créer des zones de liste en cascade dynamiques dans Excel

Dim xPreStr As String
Private Sub Drink_Click()
'Update by Extendoffice 2018/06/04
    Dim I, xRows As Long
    Dim xRg As Range
    Dim xRegStr As String
    Application.ScreenUpdating = False
    xRegStr = Me.Drink.Text
    Set xRg = Range("A2:A11")
    xRows = xRg.Rows.Count
    If xRegStr <> xPreStr Then
    Me.Item.Clear
   'Me.OtherListBoxName.Clear
    Set xRg = xRg(1)
    For I = 1 To xRows
        If xRg.Offset(I - 1).Value = xRegStr Then
            Me.Item.AddItem xRg.Offset(I - 1, 1).Value
            'Me.OtherListBoxName.AddItem xRg.Offset(I - 1, 2).Value
        End If
    Next
    xPreStr = xRegStr
    End If
    Application.ScreenUpdating = True
End Sub

Remarques: Dans le code Drink et Item sont les noms de deux zones de liste, modifiez-les à vos propres noms.

6. appuie sur le autre + Q les clés pour fermer le Microsoft Visual Basic pour applications fenêtre.

7. Désactivez le mode Création en cliquant sur Développeur > Mode de conception.

À partir de maintenant, lorsque vous sélectionnez un type de boisson tel que le café dans la liste des parents, tous les éléments de café s'affichent dans le second. Sélectionnez Thé ou Vin n'affichera que les articles de thé ou de vin dans la deuxième zone de liste. Voir la capture d'écran:


Articles Liés:


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.

Be the first to comment.