Sie wissen sicher dass Sie mit einer Dropdownliste die Dateneingabe häufig enorm beschleunigen und Erfassungsfeher vermeiden können. Dieser Tipp zeigt, wie Sie die Auswahlmöglichkeit einer solchen Liste beschränken können, indem Sie eine übergeordnete Liste als Bedingung festlegen:
Beispiel: Ausgangsdaten
Sie wollen aus der Liste der Filialen Ihrer Firma immer nur diejenigen auswählen können, die in einem vorher gewählten Land liegen. Dazu erstellen Sie eine Tabelle, die in der Kopfzeile die Länder und darunter die Filialnamen enthält (siehe Screenshot).
Erstes Dropdownfeld einrichten
- Klicken Sie in die Zelle, die das Dropdownfeld für die Länderauswahl aufnehmen soll (zB. E2).
Achtung! Die Zelle darf nicht unterhalb der Länder/Filialtabelle (Spalten A bis C) liegen.
- Menüband Register Daten, Gruppe Datentools - Datenüberprüfung.
- Im Dialog Gültigkeitsprüfung Register Einstellungen aktivieren.
- Im Feld Zulassen wählen Sie den Eintrag "Liste".
Dann klicken Sie ins Feld Quelle und markieren direkt in der Tabelle den Kopfbereich der Ausgangsliste (also A1 bis C1).
- Mit OK beenden Sie die Eingabe.
Jetzt können Sie mit dem Dropdownpfeil der Zelle ein Land auswählen.
Zweites Dropdownfeld einrichten
- Wählen Sie die Zelle für die Filialauswahl (z.B. E5) aus und wiederholen Sie die Schritte 1 bis 3 von oben.
- Im Feld Zulassen wählen Sie wieder "Liste".
Ins Feld Quelle kommt diese Formel:
=BEREICH.VERSCHIEBEN(A1;1;VERGLEICH(E2;A1:C1;0)-1;ANZAHL2(INDEX(A:C;;VERGLEICH(E2;A1:C1;0)))-1;1)
- Abschließend wieder OK.
Je nach Auswahl im ersten Dropdownfeld stehen nur noch die passenden Einträge zur Auswahl.
Erläuterung zum zweiten Dropdownfeld
- Das erste Argument ("A:C") gibt den Ausgangspunkt des Verschiebevorgangs an.
- Zweites Argument: ("1") Anzahl der Zeilen, um die der Bereich nach unten verschoben wird.
- Argument 3: ("VERGLEICH(E2;A1:C1;0)-1") Um wieviele Spalten soll der Bereich nach rechts verschoben werden.
- Zur Ermittlung benötigen wir die Funktion VERGLEICH, die die relative Position eines angegebenen Elements in einem Bereich ermittelt.
- 1. Arg.: ("E2") Suchkriterium (das gesuchte Element).
- 2. Arg.: ("A1:C1") Bereich der durchsucht wird.
- 3. Arg.: ("0") 0 sucht den ersten Wert, hier die Spalte, der mit dem Kriterium genau übereinstimmt.
- Vom VERGLEICH-Ergebnis ziehen wir 1 ab, da wir ja keine fixe Spalte suchen, sondern den Ausganspunkt um x Spalten verschieben wollen.
- Argument 4: ("ANZAHL2(INDEX(A:C;;VERGLEICH(E2;A1:C1;0)))-1") Höhe des Zielbereichs.
- Mittels ANZAHL2 ermitteln wir die Anzahl der nichtleeren Zellen der Spalte und ziehen 1 (für die Kopfzeile mit dem Namen des Landes ab.
- Die Funktion INDEX liefert den Datenpunkt eines Bereichs (1. Argument), der sich ausch dem Schnittpunkt der Argumente 2 (Zeile) und 3 (Spalte) ergibt.
Da das zweite Argument leer bleibt, wird die gesamte Spalte zurückgegeben.
- 5. Argument: ("1") Breite des Zielbereichs
Tipp getestet unter Excel 2007, 2010, 2013, 2016/19