Erstellen einer abhängigen (kaskadierenden) Dropdown-Liste in Excel

  • Teile Das
Michael Brown

Vor einiger Zeit haben wir uns mit den Möglichkeiten der Excel-Datenüberprüfung beschäftigt und gelernt, wie man in Excel eine einfache Dropdown-Liste auf der Grundlage einer kommagetrennten Liste, eines Zellbereichs oder eines benannten Bereichs erstellt.

Heute werden wir diese Funktion genauer untersuchen und lernen, wie man kaskadierende Dropdown-Listen erstellt, die je nach dem in der ersten Dropdown-Liste ausgewählten Wert eine Auswahl anzeigen. Anders ausgedrückt: Wir werden eine Excel-Datenvalidierungsliste erstellen, die auf dem Wert einer anderen Liste basiert.

    Wie erstellt man ein mehrfach abhängiges Dropdown in Excel?

    Die Erstellung von mehrstufigen, abhängigen Dropdown-Listen in Excel ist ganz einfach. Alles, was Sie brauchen, sind ein paar benannte Bereiche und die Formel INDIRECT. Diese Methode funktioniert mit allen Versionen von Excel 365 - 2010 und früher.

    1. die Einträge für die Dropdown-Listen eingeben

    Geben Sie zunächst die Einträge ein, die in den Dropdown-Listen erscheinen sollen, und zwar jede Liste in einer separaten Spalte. Ich erstelle beispielsweise eine kaskadierende Dropdown-Liste mit Fruchtexporteuren und Spalte A meines Ausgangsblatts ( Obst ) enthält die Elemente der ersten Auswahlliste und 3 weitere Spalten listen die Elemente der abhängigen Auswahllisten auf.

    2. benannte Bereiche erstellen

    Nun müssen Sie Namen für Ihre Hauptliste und für jede der abhängigen Listen erstellen. Dies können Sie entweder durch Hinzufügen eines neuen Namens in der Datei Name Manager Fenster ( Formeln tab> Name Manager> Neu) oder geben Sie den Namen direkt in das Feld Name Box .

    Hinweis: Bitte beachten Sie, dass die erste Zeile nicht in den benannten Bereich aufgenommen werden darf, wenn es sich um eine Art Spaltenüberschrift handelt, wie im obigen Screenshot zu sehen.

    Eine detaillierte Schritt-für-Schritt-Anleitung finden Sie unter Wie man einen Namen in Excel definiert.

    Das sollten Sie sich merken:

    1. Die Einträge, die in der ersten Dropdown-Liste erscheinen sollen, müssen aus einem Wort bestehen, z. B. Aprikose , Mango , Orangen Wenn Sie Einträge haben, die aus zwei, drei oder mehr Wörtern bestehen, lesen Sie bitte Wie man ein kaskadierendes Dropdown mit Mehrworteinträgen erstellt.
    2. Die Namen der abhängigen Listen müssen genau mit dem entsprechenden Eintrag in der Hauptliste übereinstimmen. Zum Beispiel muss die abhängige Liste angezeigt werden, wenn " Mango " aus der ersten Dropdown-Liste ausgewählt wird, sollte den Namen Mango .

    Wenn Sie fertig sind, können Sie Strg+F3 drücken, um die Name Manager und überprüfen Sie, ob alle Listen die richtigen Namen und Referenzen enthalten.

    3. die erste (Haupt-)Auswahlliste erstellen

    1. Wählen Sie im selben oder in einem anderen Arbeitsblatt eine Zelle oder mehrere Zellen aus, in denen Ihre primäre Dropdown-Liste erscheinen soll.
    2. Gehen Sie zum Daten Registerkarte, klicken Sie auf Validierung von Daten und erstellen Sie eine Dropdown-Liste auf der Grundlage eines benannten Bereichs auf die übliche Weise, indem Sie Liste unter Erlauben Sie und die Eingabe des Bereichsnamens in das Feld Quelle Box.

    Detaillierte Schritte finden Sie unter Erstellen einer Dropdown-Liste auf der Grundlage eines benannten Bereichs.

    Als Ergebnis erhalten Sie ein Dropdown-Menü in Ihrem Arbeitsblatt, das diesem ähnelt:

    4. die abhängige Dropdown-Liste erstellen

    Wählen Sie die Zelle(n) für Ihr abhängiges Dropdown-Menü aus und wenden Sie die Excel-Datenüberprüfung erneut an, wie im vorigen Schritt beschrieben. Diesmal geben Sie jedoch anstelle des Bereichsnamens die folgende Formel in das Feld Quelle Feld:

    =INDIRECT(A2)

    Dabei ist A2 die Zelle mit der ersten (primären) Dropdown-Liste.

    Wenn die Zelle A2 derzeit leer ist, erhalten Sie die Fehlermeldung " Die Auswertung der Quelle ergibt derzeit einen Fehler. Wollen Sie fortfahren? "

    Sicheres Klicken Ja Sobald Sie einen Eintrag aus dem ersten Dropdown-Menü auswählen, werden die entsprechenden Einträge in der zweiten, abhängigen Dropdown-Liste angezeigt.

    5. eine dritte abhängige Dropdown-Liste hinzufügen (optional)

    Bei Bedarf können Sie eine dritte kaskadierende Dropdown-Liste hinzufügen, die entweder von der Auswahl im zweiten Dropdown-Menü oder von den Auswahlen in den ersten beiden Dropdowns abhängt.

    Einrichten einer 3. Dropdown-Liste, die von der 2. Liste abhängt

    Sie können die Dropdown-Liste dieses Typs auf die gleiche Weise erstellen, wie wir gerade ein zweites abhängiges Dropdown-Menü erstellt haben. Denken Sie nur an die 2 wichtigen Dinge, die oben besprochen wurden und die für die korrekte Arbeit Ihrer kaskadierenden Dropdown-Listen unerlässlich sind.

    Wenn Sie z. B. eine Liste von Regionen in Spalte C anzeigen möchten, je nachdem, welches Land in Spalte B ausgewählt wurde, erstellen Sie eine Liste von Regionen für jedes Land und benennen sie nach dem Namen des Landes, genau so, wie das Land in den zweiten Dropdown-Listen erscheint. Eine Liste von indischen Regionen sollte z. B. "Indien" heißen, eine Liste von chinesischen Regionen - "China" usw.

    Danach wählen Sie eine Zelle für das dritte Dropdown-Menü (in unserem Fall C2) und wenden die Excel-Datenüberprüfung mit der folgenden Formel an (B2 ist die Zelle mit dem zweiten Dropdown-Menü, das eine Liste von Ländern enthält):

    =INDIRECT(B2)

    Jetzt können Sie jedes Mal, wenn Sie Indien Unter der Liste der Länder in Spalte B haben Sie in der dritten Dropdown-Liste folgende Auswahlmöglichkeiten:

    Hinweis: Die angezeigte Liste der Regionen ist für jedes Land einzigartig, hängt aber nicht von der Auswahl in der ersten Dropdown-Liste ab.

    Erstellen Sie eine dritte Dropdown-Liste, die von den ersten beiden Listen abhängt

    Wenn Sie ein kaskadierendes Dropdown-Menü erstellen möchten, das von der Auswahl sowohl in der ersten als auch in der zweiten Dropdown-Liste abhängt, dann gehen Sie so vor:

    1. Erstellen Sie weitere Gruppen von benannten Bereichen und benennen Sie sie nach den Wortkombinationen in den ersten beiden Dropdown-Listen. Sie haben zum Beispiel Mango, Orangen, etc. in der 1. Liste und Indien, Brasilien, usw. in der 2. Dann erstellen Sie benannte Bereiche MangoIndien , MangoBrazil , OrangenIndien , OrangenBrasilien usw. Diese Namen sollten keine Unterstriche oder andere zusätzliche Zeichen enthalten.

  • Wenden Sie die Excel-Datenüberprüfung mit der Formel INDIRECT SUBSTITUTE an, die die Namen der Einträge in den ersten beiden Spalten miteinander verbindet und die Leerzeichen aus den Namen entfernt. In Zelle C2 würde die Datenüberprüfungsformel beispielsweise lauten:
  • =INDIRECT(SUBSTITUTE(A2&B2," ",""))

    A2 und B2 enthalten die erste bzw. zweite Dropdown-Liste.

    Als Ergebnis werden in der 3. Dropdown-Liste die Regionen angezeigt, die den Obst und Land in den ersten beiden Dropdown-Listen ausgewählt.

    Dies ist die einfachste Methode, um kaskadierende Dropdown-Felder in Excel zu erstellen, hat jedoch eine Reihe von Einschränkungen.

    Beschränkungen dieses Ansatzes:

    1. Die Einträge in Ihrer primären Dropdown-Liste müssen aus Ein-Wort-Einträgen bestehen. Lesen Sie, wie Sie kaskadierende Dropdown-Listen mit Mehr-Wort-Einträgen erstellen können.
    2. Diese Methode funktioniert nicht, wenn die Einträge in Ihrer Haupt-Dropdown-Liste Zeichen enthalten, die in Bereichsnamen nicht zulässig sind, wie z. B. der Bindestrich (-), das kaufmännische Und (&) usw. Die Lösung besteht darin, ein dynamisches kaskadierendes Dropdown zu erstellen, für das diese Beschränkung nicht gilt.
    3. Auf diese Weise erstellte Dropdown-Menüs werden nicht automatisch aktualisiert, d.h. Sie müssen die Referenzen der benannten Bereiche jedes Mal ändern, wenn Sie Elemente in den Quelllisten hinzufügen oder entfernen. Um diese Einschränkung zu umgehen, versuchen Sie, eine dynamische kaskadierende Dropdown-Liste zu erstellen.

    Kaskadierende Dropdown-Listen mit Mehrworteinträgen erstellen

    Die INDIRECT-Formeln, die wir im obigen Beispiel verwendet haben, können nur mit Ein-Wort-Elementen umgehen. Die Formel =INDIRECT(A2) verweist beispielsweise indirekt auf die Zelle A2 und zeigt den benannten Bereich genau mit demselben Namen an, der in der referenzierten Zelle steht. Allerdings sind Leerzeichen in Excel-Namen nicht erlaubt, weshalb diese Formel nicht mit Mehrwortnamen funktioniert.

    Die Lösung besteht darin, die Funktion INDIRECT in Kombination mit SUBSTITUTE zu verwenden, wie wir es bei der Erstellung eines dritten Dropdowns getan haben.

    Angenommen, Sie haben Wassermelone In diesem Fall benennen Sie eine Liste von Wassermelonen-Exporteuren mit einem Wort ohne Leerzeichen - Wassermelone .

    Wenden Sie dann für die zweite Dropdown-Liste die Excel-Datenüberprüfung mit der folgenden Formel an, die die Leerzeichen aus dem Namen in Zelle A2 entfernt:

    =INDIREKT(SUBSTITUTE(A2," ",""))

    Wie kann man Änderungen in der primären Dropdown-Liste verhindern?

    Stellen Sie sich folgendes Szenario vor: Ihr Benutzer hat die Auswahl in allen Dropdown-Listen getroffen, dann hat er es sich anders überlegt, ist zur ersten Liste zurückgegangen und hat ein anderes Element ausgewählt. Das Ergebnis ist, dass die erste und zweite Auswahl nicht übereinstimmen. Um dies zu verhindern, sollten Sie alle Änderungen in der ersten Dropdown-Liste blockieren, sobald eine Auswahl in der zweiten Liste getroffen wurde.

    Verwenden Sie dazu bei der Erstellung des ersten Dropdown-Menüs eine spezielle Formel, die prüft, ob im zweiten Dropdown-Menü ein Eintrag ausgewählt ist:

    =IF(B2="", Fruit, INDIRECT("FakeList"))

    Wo B2 das zweite Dropdown-Menü enthält, " Obst " ist der Name der Liste, die im ersten Dropdown-Menü erscheint, und " FakeList " ist ein falscher Name, der nicht existiert.

    Wenn nun in der 2. Dropdown-Liste ein Element ausgewählt ist, stehen keine Auswahlmöglichkeiten zur Verfügung, wenn der Benutzer auf den Pfeil neben der ersten Liste klickt.

    Dynamische kaskadierende Dropdown-Listen in Excel erstellen

    Der Hauptvorteil einer dynamischen, von Excel abhängigen Dropdown-Liste besteht darin, dass Sie die Quelllisten frei bearbeiten können und Ihre Dropdown-Felder im Handumdrehen aktualisiert werden. Natürlich erfordert die Erstellung dynamischer Dropdowns etwas mehr Zeit und komplexere Formeln, aber ich glaube, dass sich diese Investition lohnt, denn einmal eingerichtet, ist es ein wahres Vergnügen, mit solchen Dropdown-Menüs zu arbeiten.

    Wie bei fast allem in Excel können Sie das gleiche Ergebnis auf verschiedene Weise erreichen. Insbesondere können Sie eine dynamische Auswahlliste erstellen, indem Sie eine Kombination aus den Funktionen OFFSET, INDIRECT und COUNTA oder eine robustere INDEX MATCH-Formel verwenden. Letztere ist meine bevorzugte Methode, da sie zahlreiche Vorteile bietet, von denen die wichtigsten sind:

    1. Sie müssen nur 3 benannte Bereiche erstellen, unabhängig davon, wie viele Einträge in der Haupt- und der abhängigen Liste vorhanden sind.
    2. Ihre Listen können Mehrwortelemente und Sonderzeichen enthalten.
    3. Die Anzahl der Einträge kann in jeder Spalte variieren.
    4. Die Sortierreihenfolge der Einträge spielt keine Rolle.
    5. Schließlich ist es sehr einfach, die Quellenlisten zu pflegen und zu ändern.

    Okay, genug Theorie, kommen wir zur Praxis.

    1 Organisieren Sie Ihre Quelldaten in einer Tabelle.

    Wie üblich müssen Sie zunächst alle Auswahlmöglichkeiten für Ihre Dropdown-Listen in ein Arbeitsblatt eintragen. Diesmal müssen Sie die Quelldaten in einer Excel-Tabelle speichern. Markieren Sie dazu nach der Eingabe der Daten alle Einträge und drücken Sie Strg + T oder klicken Sie auf einfügen. tab> Tabelle Geben Sie dann einen Namen für Ihre Tabelle in das Feld Tabelle Name Box.

    Der bequemste und visuellste Ansatz besteht darin, die Elemente für das erste Dropdown-Menü als Tabellenüberschriften und die Elemente für das abhängige Dropdown-Menü als Tabellendaten zu speichern. Der folgende Screenshot zeigt die Struktur meiner Tabelle mit dem Namen Ausführer_tbl - Die Namen der Früchte sind Tabellenüberschriften, und eine Liste der Ausfuhrländer wird unter dem entsprechenden Namen der Früchte hinzugefügt.

    2) Excel-Namen erstellen

    Nun, da Ihre Quelldaten fertig sind, ist es an der Zeit, benannte Verweise einzurichten, die dynamisch die richtige Liste aus Ihrer Tabelle abrufen.

    2.1 Fügen Sie einen Namen für die Kopfzeile der Tabelle hinzu (Haupt-Dropdown)

    Um einen neuen Namen zu erstellen, der auf die Tabellenüberschrift verweist, markieren Sie diese und klicken dann entweder auf Formeln > Name Manager > Neu oder drücken Sie Strg + F3 .

    Microsoft Excel verwendet das integrierte Tabellenreferenzsystem, um den Namen der Tabelle zu erstellen. table_name[#Headers] Muster.

    Geben Sie ihm einen aussagekräftigen und leicht zu merkenden Namen, z. B. Obst_Liste und klicken Sie auf OK .

    2.2 Erstellen Sie einen Namen für die Zelle, die die erste Dropdown-Liste enthält

    Ich weiß, dass Sie noch kein Dropdown haben :) Aber Sie müssen die Zelle für Ihr erstes Dropdown auswählen und einen Namen für diese Zelle erstellen, da Sie diesen Namen in den Verweis des dritten Namens aufnehmen müssen.

    Mein erstes Dropdown-Feld befindet sich zum Beispiel in Zelle B1 auf Blatt 2, also erstelle ich einen Namen dafür, etwas Einfaches und Selbsterklärendes wie Obst :

    Tipp: Verwenden Sie geeignete Zellbezüge, um Dropdown-Listen kopieren über das Arbeitsblatt.

    Bitte lesen Sie die folgenden Absätze aufmerksam, denn es handelt sich um einen sehr nützlichen Tipp, den Sie nicht verpassen sollten. Vielen Dank an Karen für diesen Beitrag!

    Wenn Sie Ihre Einblendlisten in andere Zellen kopieren möchten, verwenden Sie gemischte Zellbezüge, wenn Sie den Namen für die Zelle(n) mit Ihrer ersten Einblendliste erstellen.

    Damit die Dropdowns korrekt in andere Spalten (d.h. nach rechts), verwenden Sie relative Spalten- (ohne $-Zeichen) und absolute Zeilenreferenzen (mit $) wie = Sheet2!B$1.

    Das Ergebnis ist, dass die abhängige Dropdown-Liste von B1 in Zelle B2 erscheint; die abhängige Dropdown-Liste von C1 wird in C2 angezeigt, und so weiter.

    Und wenn Sie vorhaben, die Dropdowns in andere Zeilen (d.h. spaltenabwärts), dann verwenden Sie absolute Spalten- (mit $) und relative Zeilenkoordinaten (ohne $) wie = Sheet2!$B1.

    Um eine Dropdown-Zelle in eine beliebige Richtung zu kopieren, verwenden Sie einen relativen Verweis (ohne das $-Zeichen) wie = Sheet2!B1.

    2.3 Erstellen Sie einen Namen, um die Einträge des abhängigen Menüs abzurufen

    Anstatt für jede der abhängigen Listen eindeutige Namen zu vergeben, wie wir es im vorigen Beispiel getan haben, werden wir eine einzige Liste erstellen genannte Formel die keiner bestimmten Zelle oder einem Zellbereich zugeordnet ist. Sie ruft die richtige Liste von Einträgen für die zweite Dropdown-Liste ab, je nachdem, welche Auswahl in der ersten Dropdown-Liste getroffen wurde. Der Hauptvorteil dieser Formel besteht darin, dass Sie keine neuen Namen erstellen müssen, wenn Sie der ersten Dropdown-Liste neue Einträge hinzufügen - eine benannte Formel deckt sie alle ab.

    Mit dieser Formel erstellen Sie einen neuen Excel-Namen:

    =INDEX(exporters_tbl,,MATCH(fruit,fruit_list,0))

    Wo:

    • Ausführer_tbl - den Namen der (in Schritt 1 erstellten) Tabelle;
    • Obst - den Namen der Zelle, die die erste (in Schritt 2.2 erstellte) Dropdown-Liste enthält;
    • Obst_Liste - der Name, der sich auf die Kopfzeile der Tabelle bezieht (erstellt in Schritt 2.1).

    Ich habe ihm einen Namen gegeben ausführer_liste wie in der folgenden Abbildung zu sehen ist.

    Nun, den größten Teil der Arbeit haben Sie bereits erledigt! Bevor Sie zum letzten Schritt kommen, sollten Sie den Namensmanager ( Strg + F3 ) öffnen und die Namen und Referenzen überprüfen:

    3. die Excel-Datenvalidierung einrichten

    Das ist eigentlich der einfachste Teil: Mit den beiden benannten Formeln richten Sie die Datenüberprüfung auf die übliche Weise ein ( Daten tab> Validierung der Daten ).

    • Für die erste Dropdown-Liste geben Sie in das Feld Quelle =Fruchtliste (der in Schritt 2.1 erstellte Name).
    • Geben Sie in der Dropdown-Liste für abhängige Personen =Exporteure_liste (der in Schritt 2.3 erstellte Name).

    Fertig! Ihr dynamisches kaskadierendes Dropdown-Menü ist fertig und wird automatisch aktualisiert, indem es die Änderungen, die Sie an der Quelltabelle vorgenommen haben, widerspiegelt.

    Dieses dynamische Excel-Dropdown, das in jeder Hinsicht perfekt ist, hat ein Manko: Wenn die Spalten Ihrer Quelltabelle eine unterschiedliche Anzahl von Einträgen enthalten, erscheinen die leeren Zeilen in Ihrem Menü wie hier:

    Leere Zeilen von der dynamischen Kaskaden-Dropdown-Liste ausschließen

    Wenn Sie Leerzeilen in Ihren Dropdown-Boxen entfernen möchten, müssen Sie einen Schritt weiter gehen und die INDEX / MATCH-Formel verbessern, die zur Erstellung der abhängigen dynamischen Dropdown-Liste verwendet wird.

    Die Idee besteht darin, 2 INDEX-Funktionen zu verwenden, wobei die erste die Zelle oben links und die zweite die Zelle unten rechts des Bereichs abfragt, oder die Funktion OFFSET mit verschachteltem INDEX und COUNTA. Die detaillierten Schritte folgen unten:

    1. zwei zusätzliche Namen anlegen

    Um die Formel nicht zu umfangreich zu machen, erstellen Sie zunächst ein paar Hilfsnamen mit den folgenden einfachen Formeln:

    • Ein Name namens Spalte_Zahl um auf die ausgewählte Spaltennummer zu verweisen:

      =MATCH(obst,obst_liste,0)

    • Ein Name namens gesamt_col um auf die ausgewählte Spalte zu verweisen (nicht auf die Nummer der Spalte, sondern auf die gesamte Spalte):

      =INDEX(exporters_tbl,,col_num)

    In den obigen Formeln, Ausführer_tbl ist der Name Ihrer Quelltabelle, Obst ist der Name der Zelle, die die erste Dropdown-Liste enthält, und Obst_Liste ist der Name, der sich auf die Kopfzeile der Tabelle bezieht.

    2. die benannte Referenz für das abhängige Dropdown-Menü erstellen

    Als nächstes verwenden Sie eine der folgenden Formeln, um einen neuen Namen zu erstellen (nennen wir ihn Ausführer_liste2 ), die mit der abhängigen Dropdown-Liste verwendet werden soll:

    =INDEX(exporters_tbl,1,col_num) : INDEX(exporters_tbl, COUNTA(entire_col), col_num)

    =OFFSET(INDEX(exporters_tbl,1,col_num),0,0,COUNTA(entire_col))

    3. die Datenvalidierung anwenden

    Wählen Sie schließlich die Zelle mit dem abhängigen Dropdown aus und wenden Sie die Datenüberprüfung an, indem Sie = Ausführer_liste2 (der im vorigen Schritt erstellte Name) in der Datei Quelle Box.

    Der folgende Screenshot zeigt das resultierende dynamische Dropdown-Menü in Excel, in dem alle Leerzeilen verschwunden sind!

    Hinweis: Bei der Arbeit mit dynamischen kaskadierenden Dropdown-Listen, die mit den obigen Formeln erstellt wurden, wird der Benutzer nicht daran gehindert, den Wert in der ersten Dropdown-Liste zu ändern, nachdem er die Auswahl im zweiten Menü getroffen hat. Sie können Änderungen im ersten Feld blockieren, nachdem eine Auswahl im zweiten Feld getroffen wurde, indem Sie entweder VBA oderkomplexen Formeln, die in diesem Lehrgang vorgeschlagen werden.

    So erstellen Sie eine Excel-Datenvalidierungsliste, die auf den Werten einer anderen Liste basiert. Laden Sie sich unsere Beispiel-Arbeitsmappen herunter, um die kaskadierenden Dropdown-Listen in Aktion zu sehen. Vielen Dank für die Lektüre!

    Übungsheft zum Herunterladen

    Cascading Dropdown Beispiel 1- einfache Version

    Cascading Dropdown Sample 2 - erweiterte Version ohne Leerzeichen

    Michael Brown ist ein begeisterter Technologie-Enthusiast mit einer Leidenschaft für die Vereinfachung komplexer Prozesse mithilfe von Softwaretools. Mit mehr als einem Jahrzehnt Erfahrung in der Technologiebranche hat er seine Fähigkeiten in Microsoft Excel und Outlook sowie Google Sheets und Docs verfeinert. Michaels Blog widmet sich dem Teilen seines Wissens und seiner Expertise mit anderen und bietet leicht verständliche Tipps und Tutorials zur Verbesserung von Produktivität und Effizienz. Egal, ob Sie ein erfahrener Profi oder ein Anfänger sind, Michaels Blog bietet wertvolle Einblicke und praktische Ratschläge, wie Sie diese wichtigen Softwaretools optimal nutzen können.