KutoolsforOffice — Eine Lösung, fünf leistungsstarke Tools.Mehr erreichen mit weniger Aufwand.März-Aktion: 20 % Rabatt

Wie erstellt man dynamische, kaskadierende Dropdown-Listen in Excel?

AutorSiluvia Änderungsdatum

Möglicherweise wissen Sie bereits, wie man eine kaskadierende Validierungs-Dropdown-Liste in Excel erstellt – aber wie gelingt es, dynamische kaskadierende Listenfelder in Excel zu erstellen? Dieser Artikel stellt eine VBA-Methode vor, mit der Sie genau das erreichen können.

Erstellen dynamischer kaskadierender Listenfelder mit VBA-Code


Erstellen dynamischer kaskadierender Listenfelder mit VBA-Code

Wie im folgenden Screenshot gezeigt, erstellen Sie ein übergeordnetes Listenfeld mit den eindeutigen Werten aus der Spalte „Getränk“ und zeigen Sie im zweiten Listenfeld automatisch alle zugehörigen Werte basierend auf der Auswahl im übergeordneten Feld an. Der folgende VBA-Code unterstützt Sie dabei – gehen Sie wie folgt vor:

dynamische kaskadierende Listenfelder

1. Zunächst müssen Sie alle eindeutigen Werte aus der Spalte „Getränk“ extrahieren. Wählen Sie eine leere Zelle aus, geben Sie die Matrixformel =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),„") in die Formel-Leiste ein und drücken Sie anschließend Strg + Umschalt + Eingabe. Ziehen Sie dann am Ausfüllkästchen, um alle eindeutigen Werte zu erhalten. Siehe Screenshot:

alle eindeutigen Werte mit Formel auflisten

Hinweis: In der Formel ist $A$2:$A$11 der Bereich, aus dem Sie eindeutige Werte extrahieren. J1 ist die Zelle direkt über der Position Ihrer Formel.

Tipp: Falls die Formel schwer zu merken und zu handhaben ist, bietet sich das Doppelte/ Eindeutige Zellen auswählen-Tool von Kutools für Excel als gute Alternative an, um schnell alle eindeutigen Werte aus einer Spalte zu extrahieren.

Wählen Sie die Spalte mit den eindeutigen Werten aus, die Sie extrahieren möchten. Aktivieren Sie das Tool, indem Sie auf Kutools > Auswählen > Doppelte/ Eindeutige Zellen auswählen klicken. Im Dialogfeld Doppelte/ Eindeutige Zellen auswählen wählen Sie die Option Eindeutige Werte (Erster Duplikat eingeschlossen) und klicken auf die Schaltfläche OK. Anschließend sind alle eindeutigen Werte in der Spalte markiert – kopieren Sie sie und fügen Sie sie an einer neuen Stelle ein. Siehe Screenshot:

eindeutige Werte mit Kutools auswählen

Kutools für Excel: mit mehr als 200 praktischen Excel-Add-Ins, kostenlos und uneingeschränkt 60 Tage lang testbar.Jetzt herunterladen und kostenlos testen!

2. Fügen Sie zwei separate Listenfelder ein, indem Sie auf Entwickler > Einfügen > Listenfeld (ActiveX-Steuerelement) klicken. Siehe Screenshot:

Klicken Sie im Entwickler-Tab auf Listenfeld

3. Klicken Sie mit der rechten Maustaste auf das übergeordnete Listenfeld und wählen Sie im Kontextmenü Eigenschaften. Ändern Sie im Eigenschaften-Dialogfeld das Feld (Name) in Getränk oder einen anderen gewünschten Namen, geben Sie den Zellbereich mit den extrahierten eindeutigen Werten in das Feld ListFillRange ein und schließen Sie den Dialog.

Geben Sie die Optionen im Eigenschaftenbereich an

4. Wiederholen Sie Schritt (Name), um im Eigenschaften-Dialogfeld den Namen des zweiten Listenfelds in „Artikel“ zu ändern.

5. Klicken Sie mit der rechten Maustaste auf die Arbeitsblattregisterkarte und wählen Sie Code anzeigen aus dem Kontextmenü. Anschließend fügen Sie den folgenden VBA-Code in das Code-Fenster ein. Siehe Screenshot:

VBA-Code: Dynamische kaskadierende Listenfelder in Excel erstellen

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

Hinweis: Im Code sind „Getränk“ und „Artikel“ die Namen der beiden Listenfelder – passen Sie diese bitte entsprechend Ihren eigenen Bezeichnungen an.

Klicken Sie auf Code anzeigen, um den Code in das Modul einzufügen

6. Drücken Sie die Tasten Alt + Q, um das Fenster Microsoft Visual Basic für Applikationen zu schließen.

7. Deaktivieren Sie den Entwurfsmodus, indem Sie auf Entwickler > Entwurfsmodus klicken.

Ab sofort werden beim Auswählen einer Getränkesorte wie „Kaffee“ im übergeordneten Listenfeld automatisch alle Kaffee-Artikel im zweiten Listenfeld angezeigt. Wählen Sie „Tee“ oder „Wein“ aus, erscheinen entsprechend ausschließlich Tee- bzw. Wein-Artikel im zweiten Listenfeld. Siehe Screenshot:

dynamische kaskadierende Listenfelder wurden erstellt



Verwandte Artikel:

Beste Office-Produktivitätstools

🤖KUTOOLS AI-Assistent: Revolutionieren Sie Datenanalyse basierend auf:Intelligente Ausführung   |  Code generieren|  benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme erstellen|  Erweiterte Funktionen aufrufen
Beliebte Funktionen:Suchen, hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten kombinieren oder Zellen ohne Datenverlust   |   Runden ohne Formel...
Erweiterte SVERWEIS:VLookup mit mehreren Kriterien  |  VLookup mit mehreren Werten  |   VLookup über mehrere Arbeitsblätter hinweg   |   Fuzzy Match....
Erweiterte Dropdown-Liste:Schnell eine Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl-Dropdown-Liste....
Spalten-Manager:Eine bestimmte Anzahl von Spalten hinzufügen|Spalten verschieben|Sichtbarkeitsstatus ausgeblendeter Spalten umschalten|Bereiche & Spalten vergleichen...
Hervorgehobene Funktionen:Gitterfokus   |  Entwurf   |Erweiterte Formelleiste   | Arbeitsmappen- & Blatt-Manager   |  Ressourcenbibliothek(AutoText)|  Datumsauswahl   |  Arbeitsblätter konsolidieren  |  Verschlüsseln/Zellen entschlüsseln   | E-Mails per Liste versenden   |  Super Filter   |   Spezialfilter(Zellen mit fettgedruckter Schrift filtern/kursiv/durchgestrichen...) ...
Top-15-Toolsets:12-Text-Tools(Text hinzufügen,Bestimmte Zeichen löschen, ...)|   50+-Diagramm-Typen(Gantt-Diagramm, ...)|   40+ Praktische Formeln(Alter basierend auf dem Geburtstag berechnen, ...)|   19-Einfüge-Tools(QR-Code einfügen,Bild aus Pfad einfügen, ...)|   12-Konvertierungs-Tools(In Wörter umwandeln,Wechselkursumrechnung, ...)|   7-Vereinigen/Aufteilen-Tools(Erweiterte Zeilen zusammenführen,Zellen aufteilen, ...)|... und mehr
Verwenden Sie Kutools in Ihrer bevorzugten Sprache – unterstützt Englisch, Spanisch, Deutsch, Französisch, Chinesisch und 40+ weitere Sprachen!

Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor.Kutools für Excel bietet über 300 erweiterte Funktionen zur Steigerung der Produktivität und Zeit sparen.Klicken Sie hier, um die Funktion zu erhalten, die Sie am dringendsten benötigen...


Office Tab bringt eine tabbasierte Oberfläche in Office und macht Ihre Arbeit viel einfacher

  • Aktivieren Sie tabbasiertes Bearbeiten und Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters – statt jedes in einem separaten Fenster zu öffnen.
  • Steigert Ihre Produktivität um 50 % und erspart Ihnen täglich Hunderte von Mausklicks!

Alle Kutools-Add-Ins – ein Installationsprogramm

Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook und PowerPoint sowie Office Tab Pro – ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.

ExcelWordOutlookTabsPowerPoint
  • Alles-in-einem-Paket— Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro
  • Ein Installationsprogramm, eine Lizenz— innerhalb weniger Minuten eingerichtet (MSI-fähig)
  • Funktioniert besser zusammen— optimierte Produktivität über alle Office-Anwendungen hinweg
  • 30-tägige Vollversion zum Testen— keine Registrierung, keine Kreditkarte erforderlich
  • Bestes Preis-Leistungs-Verhältnis— sparen Sie im Vergleich zum Kauf einzelner Add-Ins