Im Artikel „Eingabemöglichkeiten einschränken“ habe ich ja schon beschrieben, wie man eigene Drop-Down-Listen in Excel erstellt, um die Eingaben auf gültige Werte zu beschränken.
Im heutigen Artikel möchte ich noch einen Schritt weitergehen und die Drop-Down-Listen dynamisch gestalten. Und zwar dergestalt, dass die Eingabemöglichkeiten in einer Drop-Down-Liste vom zuvor gewählten Eintrag einer anderen Drop-Down-Liste abhängig sind.
Mein Beispiel ist wie immer sehr einfach gehalten: In meiner Tabelle wähle ich aus einer Drop-Down-Liste einen Automobilhersteller aus. Abhängig vom gewählten Hersteller möchte ich in der zweiten Liste nur noch Automodelle dieses Herstellers angeboten bekommen.
Und so geht’s:
Erste Drop-Down-Liste (statisch)
Meine Beispieltabelle sieht folgendermaßen aus:
Zunächst erstellen wir für die Herstellerauswahl in Spalte A eine normale statische Drop-Down-Liste. Da dies schon mal ausführlich besprochen wurde, gibt es hier nur noch einen zusammenfassenden Screenshot:
Damit haben wir also für die Eingabe in Spalte A unsere erste (statische) Drop-Down-Liste mit den Herstellern definiert.
Zweite Drop-Down-Liste (dynamisch)
Damit wir später maximale Flexibilität haben, definieren wir zunächst die einzelnen Herstellermodelle jeweils als eine separate Tabelle. Beginnen wir also mit dem ersten Hersteller „Audi“:
- Menü „Einfügen – Tabelle“ auswählen
- Zellenbereich F1:F6 markieren
- Option „Tabelle hat Überschriften“ anklicken
Wie man sieht, wird die Spalte mit den Modellen jetzt als Tabelle formatiert und hat (noch) einen automatisch vergebenen Namen, hier: „Tabelle1“:
Diesen Namen müssen wir nun mit dem Namen des Herstellers ersetzen, und zwar in der exakt gleichen Schreibweise, wie er in der Spaltenüberschrift erscheint:
Anschließend verfahren wir nach dem gleichen Muster mit den anderen Herstellern: Für den Bereich G1:G7 legen wir eine Tabelle mit dem Namen „BMW“ an, für H1:H6 „Mercedes“ und so weiter. Zum Schluss haben wir also vier mit eigenen Namen versehene Tabellen:
Und nun kommt unsere dynamische Drop-Down-Liste. Markieren wir zunächst den Eingabebereich in Spalte B und rufen dann wieder das Menü „Daten – Datenüberprüfung auf“:
Unter „Zulassen“ wählen wir wieder „Liste“. Als Quelle geben wir jedoch jetzt die folgende Formel ein:
=INDIREKT(A2)
Wichtig: A2 muss als relativer Bezug angegeben werden, also ohne irgendwelche $-Zeichen!
Die nachfolgende Meldung erscheint nur, da wir noch keinen Wert in der Spalte A stehen haben. Wir können sie also getrost mit „Ja“ bestätigen:
Was macht nun die eingegebene Formel?
Ganz allgemein gesprochen kann ich mit der INDIREKT-Funktion den Inhalt der Zelle ausgeben, auf deren Adresse ich in einer anderen Zelle verweise. Ich hoffe, folgendes Beispiel macht es etwas deutlicher:
In Zelle B1 steht die INDIREKT-Formel, die auf die Zelle A1 verweist. Und in A1 steht der Text „C5“. Die INDIREKT-Funktion interpretiert diesen Text nun als Zelladresse und gibt deshalb den Inhalt von Zelle C5 aus:
Anstelle einer Zelladresse kann man auch einen definierten Namen angeben. Und das ist genau, was wir in unserer Drop-Down-Liste machen: =INDIREKT(A2)
Wenn ich also in Zelle A2 den Hersteller „BMW“ auswähle, dann entspricht das gleichzeitig auch dem Tabellennamen, den wir zuvor für die einzelnen BMW-Modelle definiert haben.
Und damit liefert mir die INDIREKT()-Funktion in der Zelle B2 nur noch die Liste der Werte, die sich an der angegeben Adresse befinden:
Wähle ich nun in der nächsten Zeile einen anderen Hersteller, so werden wieder nur die passsenden Modelle angeboten:
Wie gesagt: Der Trick liegt daran, dass der Name der einzelnen Tabellen jeweils genau dem Hersteller entspricht.
Zusatz-Bonus:
Dass wir die Modell-Listen als Tabellen definiert haben, bringt einen weiteren Vorteil mit sich: Wenn wir später an das Ende einer Tabelle weitere Elemente hinzufügen, so werden diese automatisch auch in der Drop-Down-Liste angezeigt. Denn auch die Tabelle erweitert sich dynamisch, wie man am folgenden Beispiel sieht:
In einem späteren Artikel werde ich nochmal auf dynamische Drop-Down-Listen zurückkommen und weitere Anwendungsmöglichkeiten zeigen.
P.S. Die Lösung ist immer einfach. Man muss sie nur finden.
(Alexander Solschenizyn)
P.P.S. Das Problem sitzt meistens vor dem Computer.
Pingback: Die Qual der Wahl: Mehrspaltige Dropdown-Listen | Der Tabellen-Experte
Hallo,
wirklich tolle Lösung. Dachte schon ich müßte sowas mit Makros lösen, weil die Formeln im Gürltigkeitsbereich ansonsten zu riesig werden.
Eine Frage hierzu habe ich aber noch.
Angenommen ich wähle nun den Audi aus und nehme das Model A1.
Später entscheide ich mich dann doch für einen Volkswagen.
Nun steht in der Tabelle der Volkswagen Model A1.
Da dies keinen Sinn macht will ich das natürlich nicht.
Gibt es eine Möglichkeit, das der Wert im Modell nun wieder auf einen leeren Wert zurückgesetzt wird.
Ein leerer Wert fällt ins Auge. Ein falscher leider nicht immer.
Danke.
Gruß
Alex
Hallo,
habe da auch ne gute Möglichkeit dafür gefunden dass das Model gelöscht wird wenn bei Hersteller was verändert wird.
Dazu an die Tabelle folgenden code anhängen.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range(„A1“)) _
Is Nothing Then Range(„F1“) = „“
End Sub
Gruss Timo
kleiner fehler eingeschlichen 😉
muss so natürlich so heissen
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range(„A1“)) _
Is Nothing Then Range(„B1“) = „“
End Sub
Gruss Timo
Hallo Timo,
vielen Dank für diese Lösung. VBA ist sicherlich oft eine gute Möglichkeit, so ein Problem auf elegante Art und Weise zu lösen.
Danke für den Tipp und schöne Grüße,
Martin
Hallo Timo, hallo Martin,
sowohl das dyn. Dropdown als auch das kleine VBA haben mir sehr geholfen. Vielen Dank dafür.
Könnte man das VBA auch so anpassen, dass die Zelle B1 nur dann gelöscht wird, wenn der Wert ungültig ist? In meiner Anwendung kommen einige Werte in beiden Dropdowns vor, oder besser: Liste A enthält alle Werte, Liste B ist eine Teilmenge von A.
Gruß,
Walter
Hallo Timo und Martin,
wie kann ich diesen Code an die Tabelle anhängen?
Ich bin in Excel nicht so fit und benötige deshalb hierfür eine ausführliche Erklärung.
Oder geht das überhaupt nicht als Leihe?
Gruß
Philip
Hallo Philip,
auch wenn ich hier keine ausführliche Beschreibung geben kann, soviel zumindest in Kürze: Du öffnest in Excel die Entwicklertools und gehst dort auf die Schaltfläche „Visual Basic“. Damit öffnest Du die VBA-Entwicklungsumgebung. Sofern noch kein VBA-Modul vorhanden ist (wovon ich hier ausgehe), legst Du über das Menü „Einfügen – Modul“ ein neues Modul an. Dort kopierst Du dann den Code rein.
Viel tiefer kann ich an dieser Stelle jedoch nicht einsteigen.
Grüße,
Martin
Nochmal Hallo Timo und Martin,
also ich habe diesen Code eingegeben, aber bei mir kommt ein Syntaxfehler.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range(“A1″)) _
Is Nothing Then Range(“B1″) = “”
End Sub
Wisst ihr was da sein kann?
Danke schon mal für den Tipp Martin.
Hallo Philip,
ich nehme an, dass es an den Anführungszeichen liegt. Verwende doch mal die normalen doppelten Anführungszeichen, die über der Zahl 2 liegen. Ansonsten muss ich leider passen, von VBA habe ich wenig Ahnung.
Schöne Grüße,
Martin
End if
Hallo Timo,
danke für den Code, habe ihn in meiner Excel Tabelle eingebunden, leider funktioniert es nicht. Meine statische Auswahlliste ist in C4 und die dynamischen in A12, allerdings ist A12 mit B12 verbunden, könnte das die Fehlerquelle sein? Ich würde den Verbund gern erhalten, habe die Zellen auch schon getrennt und nur A12 angegeben, aber nach Änderung in C 4 passiert trotzdem gar nichts, auch keine Fehlermeldung. Ich habe leider auch keinen Plan von VBA, habe ich ev. meine Zellenangaben falsch angegeben, kannst Du mir einen Tipp geben?
Sub Kostenartlöschen()
‚Löscht die Kostenart nach Änderung des Titels
Private Sub Kostenartlöschen_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range(„C4“)) _
Is Nothing Then Range(„A12“) = „“
End Sub
Hallo Alex,
ja, es gibt eine sehr einfache Möglichkeit: In der Registerkarte „Daten“ auf den kleinen Pfeil neben der Schaltfläche „Datenüberprüfung“ klicken und aus der Liste die Option „Ungültige Daten einkreisen“ wählen. Und schon wird der falsche A1 hinter dem Volkswagen rot markiert.
Nach der Korrektur dann einfach nochmal die Option „Ungültige Daten einkreisen“ aufrufen, und die Kreise verschwinden wieder.
Grüße,
Martin
Lieber Martin
Ganz herzlichen Dank für diese tolle und einfache Lösung.
Genial und sehr gut dokumentiert!!!
Vor allem die Erläuterung zur „INDIREKT“ Formel… Bezug auf einen Benannten Bereich… GENIAL!!!!!
Danke, danke und liebe Grüsse
Marc
Hallo Marc,
danke für das Lob! Das ist das Schöne an Excel: Ein klein wenig um die Ecke gedacht bringt oft die besten Lösungen…
Liebe Grüße,
Martin
Hallo Martin,
die Anleitung ist super und ich habe alles realisieren können. Jetzt möchte ich allerdings einen Schritt weitergehen und eine dritte Dropdown-Liste hinzufügen, um bspw. das jeweilige Baujahr der Modellreihe auszuwählen. Hierbei brauche ich jedoch deine Hilfe!
Vielen Dank vorab!
Hallo Martin
Super Anleitungen und einfach verständlich! Ich bin begeistert.
Ich hab hierzu auch noch eine Frage: Besteht die Möglichkeit das Vom Audi und dem Golf usw. ein Bild dargestellt wird?
(Bei mir sollte Bild, Art. Nr, Farbe und Grösse zu wählen sein…)
Grüsse aus der Schweiz
Herbert
Hallo Herbert,
dankeschön.
Ja, es ist mit ein paar kleinen Tricks auch möglich, dynamisch das jeweils passende Bild einzublenden. Ich werde dazu mal einen eigenen Artikel schreiben, denn es sind ein paar Kniffe notwendig, was den Kommentar hier sprengt. Aber als Stichworte seien genannt: Kamera (https://www.tabellenexperte.de/excel-mit-versteckter-kamera/) und dynamische Bereichsnamen (https://www.tabellenexperte.de/dynamische-bereichsnamen/).
Vielleicht hilft das ja schon beim Basteln 😉
Schöne Grüße,
Martin
Hallo,
ich habe ein kleines Problem und bin durch google auf diese Seite gestoßen.
Ich hoffe, dass ich hier vielleicht auf meine lösung stoße.
Ich soll für mein Unternehmen eine Lieferantenliste im Excel bauen.
Diese Tabelle soll dabei helfen, dass die Mitarbeiter nicht andauernd die selben Preise 2-3 mal in der Woche bei den Lieferanten anfragen.
Die Tabelle ist soweit schon gebaut aber ich scheitere an einem Punkt.
Ich habe zB. in Zeile A12 den ersten Lieferanten stehen.
In Zeile B12 steht der Artikel.
In Zeile C12 habe ich ein Drop-Down Menü eingebaut, wo man die Stückzahl auswählen kann, für den man den Preis wissen möchte.
Ist es möglich, dass wenn ich zB. in C12 eine beliebige Stückzahl auswähle, dass in Zelle D12 der Preis für die ausgewählte Stückzahl angezeigt wird?
Ich würde mich über Hilfe sehr freuen.
Liebe Grüße
Patrick
Microsoft Office Professional Plus 2010
Hallo Patrick,
ich habe Dir dazu eine Nachricht an Deine E-Mail-Adresse geschickt.
Schöne Grüße,
Martin
Hallo, das ist eine super Anleitung, habe das sofort und ohne Schwierigkeiten umsetzen können.
Jetzt habe ich jedoch das Problem das ich nur eine Untergruppierung habe, sondern 3. Habe das mit der obigen Methode versucht, aber da dauert es Mega lange bis ich alle Tabellen von allen Gruppen erstellt habe.
Fällt dir zufällig eine schnellere Methode ein?
also ich habe zum Beispiel:
Marke-Modell-Edition-Ausstattung
Wäre top, wenn dir da was einfällt.
Mit freundlichen Grüßen
Kevin
Hallo Kevin,
da gibt es schon Methoden dafür, aber das lässt sich nicht in zwei, drei Sätzen hier darstellen. Aber ich arbeite an einem Leitfaden für Dropdown-Listen, der alle möglichen Aspekte behandeln wird. Bis der fertig ist, dauert es allerdings noch eine Weile, daher muss ich Dich im Moment noch vertrösten.
Grüße,
Martin
Hallo Martin,
erst einmal ein großes Lob für deine Seite. Ich selbst habe auch schon an eine eigene Excelseite gedacht. Als Admin bekommen ich sehr oft Excelfragen und liebe es wenn es etwas kniffliger wird.
Dann macht Excel erst richtig Spaß!
Leider habe ich es bisher zeitlich nicht geschafft eine solche Seite aufzubauen. Deshalb „Hut ab“ – du steckst hier wirklich viel Arbeit und Zeit rein.
Aber auch als Excelfreak versuche ich verzweifelt eine einfache Variante für die variablen Dropdowns mit 3 Ebenen (Bereich, Teilbereich & Aufgabenpaket) zu erstellen.
Lösungen habe ich schon, aber die sind definitiv nicht für den Endbenutzer. Deshalb bin ich sehr gespannt, wie du das gelöst hast. Obige Variante ist auch viel einfacher als meine mit „Bereich.Verschieben“ gelöste Variante.
Wann wird deine Lösung für die 3. Ebene denn veröffentlicht? Oder gibt es eine Möglichkeit diese schon vorher zu bekommen? 😉
Hallo Gego,
danke für das Lob. Es steckt in der Tat viel Arbeit und Herzblut in diesem Blog, aber es macht auch unheimlich viel Spaß, und insbesondere dann, wenn es so positives Feedback von den Lesern gibt.
Das Thema „Dropdown-Liste“ ist ein echter Dauerbrenner und das Interesse hier ist ziemlich groß. Es wird voraussichtlich bis Ende März dauern, bis mein Leitfaden fertig sein wird. Bis dahin muss ich Dich und alle anderen Interessierten noch um etwas Geduld bitten.
Schöne Grüße,
Martin
Hallo,
ich habe auch das Problem mit den Untergruppierung 3.
Gibt es den Leitfaden schon irgendwo?
Stanley
Hallo Stanley,
ja, den Dropdown-Leitfaden gibt es! Hier ist der Link dazu:
Dropdown-Listen in Excel – Der große Leitfaden
Schöne Grüße,
Martin
Ich habe auch eine Frage.
Eine Dropdownliste habe ich bereits erstellt.
Doch nun brauche ich hilfe und zwar:
Indem ich etwas in der Dropdown liste anklicke soll die komplette Zeile markiert werden.
Weist du ich das hinbekomme?
Danke im vorraus 🙂
Hallo Max,
wenn Du mit „markieren“ meinst, dass die Zeile z.B. eingefärbt werden soll: Das lässt sich ohne Probleme über eine bedingte Formatierung lösen. Wenn du mit „markieren“ aber tatsächlich die Zellen (wie mit der Maus) selektieren möchtest, dann wird das nicht ohne VBA machbar sein.
Grüße,
Martin
dann mit Vba 🙂
Danke
Habe außerdem nur noch heute zeit dafür bitte um schnelle Rückmeldung
Vielen Dank
Hallo Max,
wenn Du eine VBA-Lösung brauchst, kann ich diese Frage nur an einen anderen Leser weitergeben. VBA ist nicht mein Steckenpferd.
Grüße,
Martin
ok und kannst du das dann hier posten?
Hallo Max,
es ist ja hier bereits gepostet. Wenn also ein anderer Leser hier vorbeikommt und darauf antworten kann und möchte, kann er das hier tun.
Schöne Grüße,
Martin
aso so meinst du das
ok^^
Hallo Martin,
dynamische Drop-Down-Listen – das ist genau die Lösung, die ich für mein Formular gesucht habe! Toll erklärt, so dass ich als absoluter Laie damit auch etwas anfangen konnte. Vielen Dank! Dummerweise arbeiten wir in der Firma mit einer älteren Excel Version. Hier gibt es die Funktion Tabelle einfügen noch nicht. D.h. ich komme bis zum ersten Drop-Down-Feld und danach funktioniert nichts mehr. (Habe das Formular mit einer neueren Version erstellt.) Gibt es für ältere Versionen ggf. eine andere Lösung?
Viele Grüße
Annette
Hallo Annette,
das Ganze geht auch ohne die Funktion „Tabellen einfügen“. Du kannst einfach einen Namen für den jeweiligen Bereich mit den Modellen vergeben. Also z.B. „Audi“ für den Bereich F2:F6, „BMW“ für G2:G7 usw.
Die Anwendung in der Datenüberprüfung funktioniert genauso über die Indirekt-Funktion: =INDIREKT(A2).
Der Nachteil ohne Tabellen ist lediglich, dass man die benannten Bereiche manuell anpassen muss, wenn neue Werte dazukommen.
Schöne Grüße,
Martin
Hallo Martin,
wie kann ich im abhängigen Dropdown sofort einen gültigen Eintrag wählen?
Denn nach dem Ändern des ersten Feldes (hier: Hersteller) bleibt im zweiten Feld (Modelle) der zuletzt gewählte Eintrag (also ggf. ein Modell, dass nicht zum Hersteller passt) stehen.
Danke für die Hilfe und beste Grüße
Walter
Hallo Walter,
ja, dieses Problem ist bekannt. Ohne VBA gibt es nur die Möglichkeit, den vorhandenen (und damit falschen) Eintrag über bedingte Formatierung farblich hervorzuheben. Ein automatisches Entfernen ist wie gesagt ohne VBA nicht möglich.
Dieses Thema wir übrigens auch in meinem demnächst hier auf dem Blog erscheinenden Dropdown-Leitfaden behandelt (kommt voraussichtlich Ende März).
Grüße,
Martin
Hallo,
ich verwende Excel 2003…
Wie funktioniert dort das „Erstellen der Tabelle“.
Also das was im ersten Abschnitt von „Drop-Down dynamisch“ passiert.
Ich google mir gerade die Finger wund, allerdings finde ich da keine wirklich Anleitung!
Danke für die Hilfe.
Grüße
Thomas
Hallo Thomas,
Deine Suche hat hier (leider) ein Ende: formatierte Tabellen gibt es erst seit Excel 2007.
Schöne Grüße,
Martin
Ich habs mir mittlerweile schon gedacht, aber ich hab es jetzt trotzdem hinbekommen.
Also die Abhängigkeiten zwischen zwei „Drop-Downs“.
Nur eben nicht so schön.
Jetzt muss ich noch rausfinden, wie ich die Summe ermitteln kann von allen Einträgen die „Lebensmittel“ sind! (Ich erstell mir gerade ein haushaltsbuch)
Kannst du mir da nen Hinweis geben, welche Funktion ich da verwenden muss???
Danke dir & bitte weiter diese Seite füllen!
Sind für mich als Excel-Einsteiger, wirklich gute Tipps drauf!
Kleiner Nachtrag: Ich habs hinbekommen.
Der (Gast)Beitrag hier zum SummenProdukt hat mir geholfen.
Doppeltes Danke von mir an dieser Stelle !
Excel ist schon KRASS 😉
Hallo Thomas,
freut mich, dass Du hier noch fündig geworden bist. SUMMENPRODUKT ist extrem vielseitig; ansonsten hätte ich noch SUMMEWENN bzw. SUMMEWENNS im Angebot gehabt (wobei ich mir nicht sicher bin, ob letztere unter Excel 2003 schon verfügbar war).
Schöne Grüße,
Martin
Super Tipps hier aber mich würde noch interessieren wie man es mancht wenn man mehrere Zellen auf den Hersteller bezieht jedoch mit unterschiedlicher Auswahl, z.B. wenn BMW gewählt wird dann in einer Zelle die Auswahl der Modellreihe und in einer zweiten Zelle die Auswahl der Werkstatt oder ähnlich.
Hallo Hans,
das ist mit ein paar Worten hier leider nicht erklärt. Ganz grob gesagt müsstest Du mehrere Quellbereiche anlegen, auf die dann in den Dropdown-Listen verwiesen wird. Um bei Deinem Beispiel zu bleiben: Wenn in Spalte A „BMW“ ausgewählt wird, dann verweist die Datenüberprüfung in Spalte B für das Modell auf den einen Quellbereich und die Datenüberprüfung in Spalte C für die Werkstatt auf einen zweiten Quellbereich. Hier wären dann nur die Werkstätten von BMW hinterlegt.
Vielleicht werde ich dazu nochmal einen eigenen Artikel schreiben, denn das Thema Dropdown-Listen ist hier ein Dauerbrenner.
Schöne Grüße,
Martin
Hallo,
erst einmal ein großes Lob für diesen Blog und die Mühe, die du dir hier machst inkl. Beantwortung von Fragen. Das ist wirklich sehr selten!
Eine tolle Anleitung, die ich wirklich leicht 1:1 umsetzen konnte.
Allerdings aktualisiert sich bei mir die Tabelle nicht automatisch, wenn ich einen neuen Eintrag hinzufüge. Obwohl ich es als Tabelle definiert habe. Im Menüpunkt Datenüberprüfung bleibt als Quelle immer der alte Wertebereich stehen.
Auch, wenn ich versuche, den Tabellennamen anstatt des Wertebereichs einzugeben, passiert nichts. Habe ich irgendetwas übersehen?
Viele Grüße
Rebekka
Hallo Rebekka,
vielen Dank für das Lob!
Hast Du in der Datenprüfung mit der INDIREKT-Funktion gearbeitet? Denn mit einem fest eingegebenen Wertebereich bekommst Du keine Dynamik. Und ein Tabellenname lässt sich direkt nicht in der Datenprüfung verwenden.
Also entweder die INDIREKT-Funktion einsetzen (wie oben beschrieben) oder Du vergibst zusätzlich einen weiteren Namen für die Werte in der Tabelle (also zusätzlich zum ohnehin schon vorhandenen Tabellennamen). Und diesen Namen verwendest Du dann in der Datenprüfung. Dann sollte es eigentlich funktionieren…
Grüße,
Martin
Hallo Martin,
das war es. Vielen Dank!
Mir war aus dem Text heraus nicht klar, dass ich zusätzlich zu dem vorhandenen Tabellennamen noch einen weiteren Namen anlegen muss.
Jetzt klappt alles 🙂
Gruß
Rebekka
Hallo Leute 🙂
erstmal vielen vielen Dank für diese super Anleitung!
Nun habe ich leider ein Problem:
Wie oben beschrieben möchte ich auch dass mein Zelleninhalt bei der Änderung gelöscht wird.
If Not Application.Intersect(Target, Range(„D3“)) _
Is Nothing Then Range(„E3“) = „“
habe ich verwendet und funktioniert einmandfrei.
Wenn ich diese Funktion jedoch auf alle meine Dropdownlisten haben möchte muss ich das alle Zellen in VBA schreiben? oder gibt es da eine möglichkeit das i-wie zu verallgemeinern?
gemeint ist quasi:
If Not Application.Intersect(Target, Range(„D3“)) _
Is Nothing Then Range(„E3“) = „“
If Not Application.Intersect(Target, Range(„D4“)) _
Is Nothing Then Range(„E4“) = „“
If Not Application.Intersect(Target, Range(„D5“)) _
Is Nothing Then Range(„E5“) = „“
…
Das würde ja kein Ende nehmen…
Hallo Martin,
ich hätte zum Bereich Dropdown Menü zwei Fragen. Am Besten benutze ich hierfür als Beispiel PLZ.
Wie kann ich in einer Dropdown Liste einer übergeordneten Begriff einfügen; also im Falle der PLZ 50, 51, 52 etc., so dass ich nicht jedes Mal gezwungen bin, alle PLZ des Bereichs 50…. anzuklicken.
In meiner Excelliste sind die PLZ nicht von 01 bis 99 sortiert, sondern ab einer Stelle sind Sie kreuz und quer. Spalte mit PLZ markiert, Befehl Zellen formatieren gewählt, benutzerdefiniert und dann im Feld fünf 00000 eingetragen. Tja, diese Lösung klappt aber nicht, denn gehe ich dann auf von A bis Z sortieren bleibt das oben genannte Problem weiterhin bestehen.
Hallo Lars,
sprichst Du jetzt von einer selbst erstellten Dropdown-Liste oder von der normalen Filter-Funktion? In der Filterfunktion gibt es die Möglichkeit, Zahlen- oder Textfilter zu verwenden, abhängig vom jeweiligen Feld. Hier kann man dann z.B. Bereiche angeben oder Kriterien wie „Beginnt mit“, „Größer als“ etc.
Wenn Du jedoch selbst erstellte Dropdown-Listen meinst, geht das nicht. Hier müsstest Du z.B. über eine Hilfsspalte eine gekürzte PLZ zur regulären PLZ erstellen und darauf filtern.
Nun zur Sortierung:
Ich vermute mal, dass es sich trotz benutzerdefiniertem Format tatsächlich um Texteinträge handelt. Und damit greift die normale alphanumerische Sortierung. Allerdings erkennt Excel normalerweise, wenn Zahlen als Text formatiert sind und frägt dann beim Sortieren nach („Alles was wie eine Zahl aussieht, als Zahl sortieren“ oder „Zahlen und als Text formatierte Zahlen getrennt sortieren“).
Sollte das nicht funktionieren, empfehle ich, die PLZ mit der WERT-Funktion erst in echte Zahlen umzuwandeln und dann nochmal die benutzerdefinierte Formatierung („00000“) anzuwenden. Es gibt übrigens auch PLZ als eigenes Format, zu finden in der Kategorie „Sonderformat“.
Grüße,
Martin
Hallo,
Ich habe dazu ein kleines Problem. Habe soweit die erste Dropdownliste erstellt und möchte nun die dynamische erstellen. Wenn ich allerdings =INDIREKT dort eingebe und die erste dropdownliste auswähle, macht er automatisch die $-Zeichen dazwischen und gibt mir anschließend die Fehlermeldung raus. auch wenn ich das per Hand eingebe ohne $-Zeichen, zeigt der mir keine Werte an und gibt eine Fehlermeldung raus. Was mache ich falsch? ich habe es heute einmal hinbekommen, wie auch immer. danach nicht mehr.
Gruß
Tim
Hallo Tim,
die Fehlermeldung kommt üblicherweise bei der Eingabe immer dann, wenn im ersten Dropdown-Feld noch kein Wert ausgewählt wurde. Diesen Fehler kann man aber getrost bestätigen. Sobald Du in der ersten Liste etwas eingibst, sollten in der zweiten Liste auch die passenden Werte angezeigt werden.
Grüße,
Martin
Aah, jetzt habe ich es wieder hinbekommen! Danke für die Schnelle Antwort!
Gruß Tim
Hallo zusammen!
Super Seite, habe die Lösung für mein Formular!
Ich würde gerne allerdings die auserwählten Textpasssagen, in diesem Bsp. die Modelle nach Häufigkeit bewerten und diese in einem Diagramm erfassen. Möchte die „Modelle“ gerne mit einem Prozentwert erfassen.
Hat mir vielleicht jemand einen Denkanstoß, bzw. eine idee, wie die auserwählten „Modelle“ per Dropdown erfasst werden können, dass ich einen Summenwert erhalte und dies so abgrenzen kann?
Vielen Dank vorab! 🙂
Mit freundlichen Grüssen
Hallo Bernd,
um ein Diagramm zu erstellen, würde ich einen separaten Tabellenbereich anlegen, der genau die für das Diagramm benötigten Elemente enthält. Also z.B. Modellname und Häufigkeit. Die Häufigkeit kannst Du ja dynamisch mit der ZÄHLENWENN-Funktion berechnen lassen. Wenn also die Modelle wie in meinem Beispiel in Spalte B eingegeben werden, dann lautet die Formel für die Anzahl der 1er-Reihe:
=ZÄHLENENN(B2:B20;“1er-Reihe“)
Und aus dieser separaten Tabelle erstellst Du dann das Diagramm.
Schöne Grüße,
Martin
Hallo.
Hat im Ersten Moment SUPER geklappt dank der übersichtlichen Anweisung und Erklärung.
Ich habe damit eine Haushaltsbuch mit mehreren Währungen erstellt.
Nur bei Nachbesserungen muß man wirklich aufpassen, dass die Bereichsnamen richtig sind, (gegebenenfalls die Spalte löschen und neu aufbauen) sonst bekommt man auf einmal leere dynamische Felder.
Beim Einfügen einer zusätzlichen Spalte ist auf einmal die Tabelle über 2 Spalten gegangen.
Nochmals DANKE für die perfekt Anleitung
LG Georg
Hallo Georg,
danke für Deinen Hinweis. Ein bisschen Kontrolle schadet bei Excel nie 😉
Schöne Grüße,
Martin
Hallo,
sehr gute Beschreibung. Nun habe ich noch eine Frage,
ist es möglich in meine erste Dropdown Liste eine Zweite zu integrieren. Sprich, ich wähle zB Hersteller BMW, und habe innerhalb der Dropdown Liste die Möglichkeit zusätzlich das Modell/ die Modelle durch Häkchen auszuwählen. Also ohne die Extra Tabelle in der eigentlichen Matrix.
Vielen Dank im Voraus!
Hallo Gernot,
eine Dropdown-Liste innerhalb einer Dropdown-Liste ist leider nicht möglich. Du kannst Dir nur behelfen, indem Du auch die Unterwerte (also z.B. die Modelle) in der Hauptliste unterhalb der Hersteller auflistest und z.B. durch Einrückung optisch hervorhebst. Mehr geht leider nicht.
Schöne Grüße,
Martin
Hallo Martin, danke für den Beitrag und ein dickes Lob, funktioniert wunderbar. Allerdings habe ich das Problem, dass meine dynamischen Auswahllisten eine Zahlenkombination (Haushaltstitel) als Überschrift haben und Tabellenüberschriften nur mit einem Buchstaben oder Unterstrich beginnen dürfen. Also habe ich den Unterstrich davor gesetzt. Dieser Unterstrich erscheint nun allerdings in der ersten statischen Auswahlliste und sieht unschön aus. Hast Du einen Tipp, wie ich das lösen kann?
Hallo Antje,
die Beschränkungen bei Feldnamen von formatierten Tabellen sind leider eine der „Kröten“, die man in diesem Zusammenhang schlucken muss. Hier habe ich leider keinen Tipp, wie das umgangen werden könnte.
Schöne Grüße,
Martin
Hallo Martin, danke, sehr schade. Gibt es eine Möglichkeit, die Dynamik ohne definierte Tabellen hinzukriegen? Ich habe schon versucht, den ganzen Block als Quelle anzugeben oder die einzelnen Bereiche ohne Tabellenfunktion, funktioniert leider nicht. Kann ich die Spalten irgendwie ohne Tabellenfunktion als Quelle für „Indirekt“ angeben???
Hallo Zusammen,
vielen Dank an den Autor für diese tolle Zusammenfassung. Das war genau das was ich gesucht habe.
Folgende Frage, nicht zwingend an den Autor:
Kann man die Datenüberprüfung/Ungültige Daten Einkreisen eventuell per Makro ausführen?
Ich habe ein Formular. Dank diesem Tutorial pflege ich die Daten „Dynamische Dropdownlisten“ und speicher dieses anschließend per Makro fortlaufend in einer riesigen Excel Tabelle. (das klappt alles)
Damit es später auch mal andere nutzen können:
Möchte ich jetzt aber gerne das es vor dem speichern einen Button gibt – Daten überprüfen und dann alles eingekreist wird.
Und speichern zukünftig erst möglich ist, wenn alle Daten gefüllt sind.
Ich hoffe mal das war verständlich.
Vielen Dank nochmals an den Autor und vielleicht kann ja hier einer helfen. 🙂
Hallo Lutz,
vielen Dank für das schöne Feedback!
Da ich hier ja grundsätzlich keine VBA-Tipps gebe, belasse ich es bei folgendem Hinweis: Einfach mal den Makro-Rekorder in den Entwicklertools mitlaufen lassen und dann die Funktion „Ungültige Daten einkreisen“ aufrufen. Das wäre zumindest ein Anfang 🙂
Schöne Grüße,
Martin
Hallo !
Dieser Tip ist Klasse, ich habe nur ein Problem (vermutlich eher Excel-bedingt): eine meiner Tabellen würde ich gerne mit „BS01“ benennen, dies lässt Excel jedoch nicht zu.
Zwei der Gründe, die in der Fehlermeldung angegeben werden, kann ich ausschließen (Name muss mit einem Buchstaben beginnen & enthält ungültige Zeichen). Ein anderes Objekt habe ich auch nicht so benannt. Bleibt nur ein „internes Objekt“.
Bitte um einen Hinweis / eine Erklärung.
Danke !
Tobias
Hallo Tobias,
der Grund ist, dass BS01 eine Zelladresse (Spalte BS, Zeile 1) ist und somit nicht als Feld- oder Tabellenname verwendet werden kann. Du kannst so etwas leicht ausprobieren, indem Du die F5-Taste drückst („Gehe zu“) und in das Feld BS01 eingibst. Dann springst Du direkt dorthin.
Schöne Grüße,
Martin
Hallo.
super Anleitung. Danke für die ausführliche Beschreibung!!!
Allerdings habe ich folgendes Problem: Der Name der Tabelle bzw. der Name des Bereichs muss laut der Anleitung mit den Werten der ersten statischen Liste (im Beispiel Audi, etc.) übereinstimmen.
Was mache ich, wenn diese Liste Zahlen, Sonder- und Leerzeichen enthält. Da erhalte ich aktuell einen Fehler, dass dies nicht funktioniert.
Gibt es hierzu Alternativen?
Viele Grüße
Chris
Hallo Chris,
ja, da gibt es verschiedene Ansätze, die allerdings den Rahmen hier sprengen würden. Ich würde dazu mein E-Book „Dropdown-Listen in Excel“ empfehlen, in dem unter anderem auch für solche Fälle Lösungen detailliert beschrieben werden.
Die Investition ist überschaubar und vielleicht wäre das ja etwas für dich?
Schöne Grüße,
Martin
Tausend DANK! Das ist die BESTE und SIMPELSTE Erklärung die ich nach 5 h googeln gefunden habe!!
GROßES DANKESCHÖN
Hi Carina,
gern geschehen und danke für das schöne Feedback!
Liebe Grüße,
Martin
Pingback: Auf Wiedersehen… | Der Tabellen-Experte
Lieben Dank! Hat bei mir super funktioniert.
Eine Frage habe ich noch, kann man in der Drop-Down-Liste auch noch ein freies Feld einfügen. Wenn mein Modell nicht in der Liste, dass ich dann ein zusätzliches eintragen kann ohne diese in die Datenliste einzufügen?
Viele Grüße
Claudia
Hallo Claudia,
nein, wenn man als Liste einen Zellenbereich definiert hat, kann man keine zusätzlichen Werte eintragen. Neue Werte müssen in die Datenliste aufgenommen werden. Ansonsten macht eine Dropdown-Liste ja auch wenig Sinn.
Grüße,
Martin
Hallo Martin,
vielen Dank für die super Beschreibung! Nach langem Suchen hat mir das wirklich das Leben sehr erleichtert!
Ich habe noch ein Problem, für das ich leider bisher keine Lösung finden konnte: In der zweiten Spalte (Modell), deren Werte von der ersten (Hersteller) abhängen, gibt es bei mir genau einen Fall, in dem anstatt einer weiteren Dropdown-Liste alle Werte möglich sein sollen, also Freitext eingegeben wird. Kann ich das irgendwie einbauen?
Viele Grüße,
Rebecca
Hallo Rebecca,
ich fürchte, dafür gibt es auch keine Lösung: Entweder Dropdown-Liste oder freie Eingabe. Beides zusammen funktioniert leider nicht.
Grüße,
Martin
Schade, das hatte ich befürchtet.
Trotzdem danke für deine schnelle Antwort und die tolle Seite .-)
Viele Grüße,
Rebecca
Hallo,
ich möchte in deinem Beispiel einen weiteren Hersteller, z.B „Ferrari“, hinzufügen, Leider wird der zusätzliche Eintrag nicht mit in die Drop-Downliste übernommen, das bedeutet, die Tabellenheader werden nicht dynamisch in der Drop-Down erweitert (Der Hersteller „Ferrari“ ist als Tabelle gesetzt)
Gibt es eine Möglichkeit, dies umzusetzen? Ich muss eine ähnliche Aufgabe machen und leider wird nur zeilenweise angepasst und nicht spaltenweise.
Viele Grüße Björn
Hallo Björn,
das lässt sich ganz einfach umsetzen, indem Du für die Tabellenheader einen eigenen Namen definierst: Nur die Tabellenköpfe markieren, dann Menü „Formeln – Namen festlegen“. Diesen Namen dann als Verweis in der Definition der Dropdownliste verwenden. Wenn jetzt eine neue Tabellenspalte dazukommt, wird diese in der Dropdownliste erscheinen.
Grüße,
Martin
Sehr hilfreich! Genau danach habe ich schon sehr lange gesucht!
Hallo,
ich habe da ein kleines Problem. Für die zweite Drop Down Liste habe ich einen dynamischen Bereich definiert. Damit funktioniert aber die Indirekt Funktion nicht mehr. Sobald ich einen Statischen Bereichsnamen vergebe funktioniert alles so wie es soll. Woran könnte das liegen bzw. gibt es einen anderen Lösungsweg für den dynamischen Bereich?
Danke und Grüße
Erik
Hallo Erik,
warum das nicht geht, lässt sich hier nicht pauschal beantworten. Grundsätzlich spielt es aber keine Rolle, ob der Bereich für die zweite Dropdown-Liste statisch oder dynamisch definiert ist (also z.B. mit BEREICH.VERSCHIEBEN). Wichtig ist lediglich, dass ein fester Name dafür vergeben wird.
Grüße,
Martin
Als erstes mal vielen Dank für diesen Beitrag und Deine Webseite im allgemeinen!
Das hat mir schon echt weitergeholfen.
Allerdings hätte ich noch ein „Spezialproblem“, welches ich gerne mit den dynamischen Drop-Down-Listen verbinden würde.
Ich versuche das mal an einem Beispiel zu erklären:
In Spalte „A“ stehen die Fahrzeughersteller. Jeder Hersteller baut unterschiedliche Serien, welche in Spalte „B“ stehen. Also können die Fahrzeughersteller in „A“ mehrfach vorkommen. In Spalte „C“ stehen die Ausführungen der Serien (z.B. Kombi, Limousine, Cabrio usw.). Jedes einzelne Fahrzeug kann in mehreren Ausführungen vorhanden sein (z.B. BMW 3er Cabrio & 3er Limousine), also kann auch die Serie Spalte „B“ mehrfach vorkommen. usw. usw. Bis ich am Ende eine Spalte habe, die die Artikelnummern enthält, welche dann eindeutig sind.
Am Ende möchte ich mit den dynamischen Drop-Down-Listen so lange auswählen, bis ich einen eindeutigen Artikel ausfindig gemacht habe.
Das Problem dabei ist, dass ich in den jeweiligen Drop-Down-Listen keine doppelten Werte angezeigt bekommen möchte und in den darauf folgenden Drop-Down-Listen immer nur die Werte stehen, die zur vorherigen Auswahl passen. Also wähle ich als erstes „BMW“ aus. In der zweiten Spalte werden dann nur die (ohne Dopplungen) Modelle von BMW angezeigt. Dort wähle ich z.B. die „3er“-Serie und bekomme in dem nächsten Drop-Down nur noch die Liste der Ausführungen des „3er“-BMW angezeigt. So klicke ich mich dann durch, bis ich am Ende den BMW, 3er, Cabrio, 6-Zylinder, rot, ….., QVX173524348 erhalte.
Bei einer Datenbank würde ich das ganze mit SQL so ähnlich lösen:
select unique(*) from SpalteA (Also: wähle alles aus Spalte „A“, aber nur eindeutige Werte. –> damit würde ich die erste Drop-Down-Liste füllen)
select unique(*) from SpalteB where SpalteA=Auswahl_aus_Drop-Down-1 (Also: wähle alle eindeutigen Werte aus Spalte „B“, bei denen in Spalte „A“ der ausgewählte Wert steht. –> damit würde ich das Drop-Down #2 befüllen.)
Das ließe sich dann natürlich so fortsetzen.
Sorry für den langen Text und das ungewöhnliche Problem. Im Prinzip suche ich also einen SVERWEIS, der mehrere Werte anhand eines Kriteriums zurück gibt, was natürlich so nicht geht.
Vielleicht hast Du ja spontan eine Idee, oder sogar eine fertige Lösung, die ich nur noch nicht gefunden habe. Ich wäre für alles, was weiter hilft dankbar!
Gruß,
Klaus
Hallo Klaus,
wie man an der Anzahl der Kommentare sieht, ist das Thema ein echter Dauerbrenner. Es ist grundsätzlich auch in Excel möglich, nahezu beliebig viele voneinander abhängige Dropdown-Listen aufzubauen. Das sprengt aber definitiv den Rahmen hier. In meinem E-Book ist aber so ein mehrstufiges Szenario beschrieben:
https://www.tabellenexperte.de/der-grosse-dropdown-leitfaden/
Damit sollte sich Dein Problem mit hoher Wahrscheinlichkeit lösen lassen.
Schöne Grüße,
Martin
Hallo,
vielen Dank für die verständliche Anleitung, ich konnte es auch schon umsetzen. Ich möchte eine ganze Tabelle so vordefinieren , dass die Benutzer immer nur aus Dropdownlisten auswählen können. Bei Spalten ohne diesen dynamischen Bezug kann ich das ganz einfach für die ganze Spalte voreinstellen. Muss ich bei dem dynamischen Bezug dies für jede einzelne Zeile eingeben, also immer die Formel =INDIREKT(C1) usw. oder gibt es irgendwie die Möglichkeit in kurzer Zeit bei einer Spalte D für jede einzelne Zeile anzugeben, dass sie sich immer auf die jeweilig gleiche Zeile in Spalte C beziehen soll?
Ich habe das bisher nicht geschafft, der Bezug ist dann immer auf die Ausgangszeile, also z.B. bei Spalte D1-3 wird immer auf C1 verwiesen und so stimmt die Auswahl dann nicht.
Vielleicht habe ich das auch hier überlesen, konnte es aber bisher nicht finden.
Für eine Antwort wäre ich sehr dankbar!
Viele Grüße, Sarah
Hallo Sarah,
genau das macht die vorgestellte Lösung mit der INDIREKT-Formel eigentlich: Sie bezieht sich immer auf die jeweils aktuelle Zeile. Wichtig ist nur, dass Du beim Anlegen der Datenüberprüfung gleich alle Zeilen markiert hast, für die die Dropdownliste gelten soll. Und Du darfst natürlich keine absoluten Bezüge verwenden, also nicht etwa =INDIREKT($C$1).
Dann sollte es eigentlich klappen.
Grüße,
Martin
Hallo Martin,
auch von mir herzlichen Dank für die große Hilfe. Auf Grund meines Jobs beschäftige ich mich derzeit leider erstmalig intensiv mit Excel. Daher meine Frage:
Ich beschreibe kurz die Situation:
Ich habe ein sehr ähnliches Problem wie Patrik im November 2014. Ich muss für diverse Abteilungen Bestellformulare kreieren. Hier möchte ich mit verknüpften Drop-Down Tabellen arbeiten. Derzeit laufen die Bestellungen noch wild aus den Abteilungen direkt an den Lieferanten, was mir die Dokumentation und Rechnungsstellung stark erschwert. Jetzt ist es so, dass das gefüllte Bestell-Formular via Mail an den Einkauf und cc an diverse Freigabestellen geschickt wird.
Da bei unseren Bestellvorgängen immer ein großer Verteiler dahinter steckt, möchte ich natürlich nicht die gesamte Datei inkl. der Tabellen mit den Preisen auf die die Drop-Down Menus Bezug nehmen mit zu den einzelnen Personen schicken.
Meine Frage:
Kann ich die Referenztabellen mit durch die ich die Lieferanten und Produkte festlege auch in die Tabelle2 schreiben und diese für andere Schreibschützen? Kann könnten unsere Mitarbeiter das als A4-Blatt angelegte Formular aus Tabelle1 in einen Ordner speichern und dann verschicken.
Gruß
Thorsten
Hallo Thorsten,
ja, die Referenztabellen können auch in einem anderen Tabellenblatt liegen (innerhalb der gleichen Arbeitsmappe). Dieses Tabellenblatt könntest Du z.B. ausblenden und den Arbeitsmappenschutz zusammen mit einem Passwort aktivieren, so dass es auch nicht mehr von Unbefugten eingeblendet werden kann.
Wenn Deine Mitarbeiter jedoch nur das erste Arbeitsblatt mit dem Formular speichern und versenden würden, dann wäre die Funktion mit den Dropdown-Listen nicht möglich. Denn die Referenztabellen würden sich ja dann in einer anderen Datei befinden.
Schöne Grüße,
Martin
Hallo Martin,
vielen Dank für diese tolle Erklärung.
Ich stehe gerade vor dem Problem, Kosten zu ermitteln, die jedoch von drei Parametern abhängen.
Es geht dabei um Ort, Typ I und Typ II:
Ort: Oregon oder Ireland (AWS Rechenzentrum)
Typ I: OnDemand oder Reserved (Laufzeitmodell)
Typ II: Instanz (= t2.medium, m4.large, m4.xlarge, m3.large und m3.xlarge = AWS Instanzen)
Die Kosten einer Instanz ist also von diesen drei Parametern abhängig.
Nach Adam Riese habe ich also 20 verschiedene Kosten.
Ich stelle mir die Tabelle so vor, dass ich
– Ort
– OnDemand oder Reserved (0 und1) und
– die Instanz
plus bis zu drei zusätzliche Features (mit fixen Kosten) sowie die Laufzeit in Tagen eingebe.
Am Ende erhalte ich die genauen Kosten addiert in einer Spalte.
Betrachte ich nur einen Ort und nur ein Laufzeitmodell, ist die Tabelle kein Problem. Aber bei zwei Orten und zwei Laufzeitmodellen
lege ich mir die Karten… Mir fehlt ein zündender Funke, wie ich das angehen soll. Hast Du eine Idee?
Danke und Gruß,
Oliver
PS: Nutze Excel 2016
Hallo Oliver,
wenn ich es richtig verstehe, geht es Dir nicht um die Erstellung der Dropdown-Listen, sondern um die anschließende Berechnung der Kosten auf Basis der gewählten Werte. Da kann ich jetzt nur bedingt einen Tipp geben, da ich nicht weiß, wie die eigentliche Kostentabelle aufgebaut ist. Üblicherweise ist das ein Anwendungsfall für den SVERWEIS. In Deinem Fall könntest Du vermutlich die verschiedenen Kriterien (z.B. über eine Hilfsspalte) zu einem einzigen zusammenfassen und dann über SVERWEIS die Kosten aus der Kostentabelle abrufen. Was voraussetzt, dass auch dort diese kombinierte Kriterium vorkommt. Vielleicht hilft das ja als Denkanstoß.
Ansonsten wird es mit einer Ferndiagnose leider schwierig…
Schöne Grüße,
Martin
Danke! Ich habe es vermutet, doch hatte ich meine Tabelle anders dargestellt. Umgebaut und es funktioniert.
Und, btw. setze ich zumindest statische Drop-Downs ein. 🙂
Gruß aus Berlin,
Oliver
Hallo Martin,
ich habe auch ein Problem mit Excel, was ich seit Wochen versuche zu lösen.
Ich versuche für mich in unserem Betrieb eine Tabelle für die Arbeitsplanung zu erstellen.
Hier soll der eingetragene Wert für jeden Mitarbeiter mit Veränderung der Kalenderwoche
„hinterlegt“ sein.
Wenn ich also für z. B. KW31 für Mitarbeiter A Baustelle B eingetragen habe, jetz zur KW 35 springe und ich da für Mitarbeiter A
Baustelle C eingebe, möchte ich beim erneuten springen zu KW31 automatisch wieder Baustelle B angezeigt bekommen.
So soll die Planung für die Woche gespeichert werden.
Gibt es da eine Möglichkeit?
Für jede Hilfe bin ich dankbar.
Ich habe schon in meiner Tabelle deine Dropdown Listen implementiert und wäre froh meine Tabelle weiter
verbessern zu können.
MfG
H. Jordan
Hallo Henning,
das funktioniert nur, wenn Du mit zwei Tabellen arbeitest:
In einer sind alle Werte für die Mitarbeiter und Kalenderwochen enthalten, also z.B. je Kalenderwoche eine Spalte. In dieser Tabelle werden die Daten also eingegeben.
In einer zweiten Tabelle kannst Du dann über Dropdownfelder die Kalenderwoche und/oder den Mitarbeiter auswählen. Und Dir dann über entsprechende Verweis-Funktionen (SVERWEIS, INDEX etc.) die dazu passende Baustelle aus der ersten Tabelle anzeigen lassen.
Die gleichzeitige Eingabe der Werte und anschließende wechselnde Anzeige innerhalb einer einzigen Tabelle ist leider nicht möglich.
Schöne Grüße,
Martin
Danke für die Antwort!!!
Hi Martin,
Vielen Dank für das super tutorial !
Habe noch ne Kleinigkeit rausgefunden bei der Verwendung dieser dynamischen Dropdown Liste.
Und zwar schreibst du:
„Diesen Namen müssen wir nun mit dem Namen des Herstellers ersetzen, und zwar in der exakt gleichen Schreibweise, wie er in der Spaltenüberschrift erscheint:“
Allerdings kann man mit Hilfe des Modulooperators ‚&‘ Zeichen ergänzen.
Ein kleines Beispiel:
Bei Werten die mit einer Ziffer beginnen aber als Tabellennamen eingesetzt werden sollen, muss man ein ‚_‘ voranstellen, weil Excel sonst bei der Namensvergabe für die Tabelle meckert.
3x30x10 als Wert in statischer
_3x30x10 als Tabellenname
In dynamische Liste =INDIREKT(„_“ & A2) eintragen.
Vieleicht hilft das ja einigen.
PS: auch mit mehreren Buchstaben, Zeichen kombinierbar
Hallo Peter,
vielen Dank für diesen guten Hinweis!
Schöne Grüße,
Martin
Funktioniert einwandfrei!
Vielen Dank für den Artikel! 🙂
Viele Grüße,
Patrick
Hallo Patrick,
gern geschehen. Freut mich, wenn’s hilft!
Schöne Grüße,
Martin
Vielen Dank für das Tutorial,hat mir sehr geholfen.
Ich würde im meiner Tabelle im ersten Drop-Down gern Leerzeichen und Bindestrichen mit anzeigen ( hier biete sich Mercedes – Benz als Beispiel an),was ja durch die Namensvergabe für die Tabelle nicht funktioniert.
Lässt sich das irgendwie bewerkstelligen ?
Gruss,Jan
Hallo Jan,
da die Namensregeln in Excel fix sind, wirst Du auf Leerzeichen und Bindestrichen vermutlich leider verzichten müssen. Im Zusammenhang mit dynamischen Dropdowns ist mir hier keine Lösung bekannt.
Schöne Grüße,
Martin
Hallo Jan.
Hallo Martin.
Es geht höchstens über zwei getrennte Dropdownlisten mit zwei unabhängigen Listen / Tabellen im Hintergrund. In der ersten Dropdownliste wird der Hersteller aus einer Tabelle gewählt (Hersteller: Mercedes – Benz, Audi, BMW etc.). In der zweiten Dropdownliste wird dann über eine dynamische Tabellenzuweisung (verschachtelte WENN-Funktionen, z.B. WENN(A1=“Mercedes – Benz“;MB-Modelle;WENN(… ) die jeweiligs zum Hersteller gehörige Modell-Tabelle (z.B. MB-Modelle) als Quelle ausgewählt.
Gruß
Stefan
Hallo Stefan,
ja, das wäre vermutlich eine Möglichkeit. Dann müssen allerdings bei jeder Änderung der Dropdown-Werte auch die Formeln angepasst werden. Aber ich habe auch keine bessere Lösung parat.
Schöne Grüße,
Martin
Vielen Dank diese Anleitung hat mir sehr Gut und schnell geholfen!
Nun habe ich eine Frage.
Ist es möglich dies wie folgt zu erweitern?
Ich möchte gerne, dass nach der Auswahl des Herstellers links daneben Kurzinfos zu dem Hersteller auftauchen. NAch Auswahl des Modells sollten dann weitere Informationen zu dem Modell ercheinen. All diese Information kann ja in einem Weiterem Tabellenblatt hinterlegt werden.
Wie könnte ich diese Idee verwirklichen?
Vielen Danke
Hallo Phil,
wenn diese Informationen in einer separaten Tabelle hinterlegt sind, dann könntest Du einfach über eine SVERWEIS-Funktion darauf zugreifen. Also in die Zelle neben dem Dropdown-Feld für den Hersteller einen SVERWEIS auf die Hersteller-Tabelle und in die Zelle neben dem Modell einen SVERWEIS auf die Modell-Tabelle.
Schöne Grüße,
Martin
Hallo Martin,
vielen Dank für diesen super Tipp und die Klasse Erklärung zu den dynamischen Dropdowns.
Ich musste ähnliche Aufgaben bisher mit diversen Hilfstabellen und in ziemlicher Kleinstarbeit erstellen… So ist es viel besser.
Ich versuche derzeit eine andere Tabelle mit dem selben Ansatz zu erstellen, bin aber noch nicht auf eine Sinnvolle Lösung gekommen:
In der Tabelle soll der Bearbeiter den Kategorien eins bis vier die Prioritäten von A bis D zuordnen. Die Auswahl der Prioritäten soll über eine DropDown-Liste funktionieren. Soweit kein Problem. Ich möchte allerdings, dass die Auswahl im DD sich jeweils um die bereits gewählten Prioritäten verringert.
Bsp:
Zelle B2 = Kategorie 1
Zelle C2 = Dropdown ( Prio A;B;C;D)
Zelle C2 = Prio C ausgewählt
Zelle B3 = Kategorie 2
Zelle C3 = Dropdown (Prio A;B;D)
usw.
Am besten sogar ohne eine Reihenfolge vorauszusetzen.
Gibt es da eine genauso einfache Lösung?
Viele Grüße, großes Lob und vielen Dank,
Christoph
Hallo Christoph,
danke für das Lob!
Das von Dir beschriebene Problem lässt sich grundsätzlich lösen, ist aber nicht ganz trivial und daher nicht mein ein paar Sätzen hier zu beschreiben. Wenn es Dir wirklich wichtig ist (und DU 15,- Euro investieren möchtest), kann ich Dir mein E-Book empfehlen:
https://www.tabellenexperte.de/der-grosse-dropdown-leitfaden/
Dort habe ich unter anderem ein Beispiel beschrieben, wie man mit beschränkte Ressourcen in Dropdown-Listen umgeht. Also mit Einträgen, die nicht beliebig oft verwendet werden dürfen.
Vielleicht wäre das ja etwas.
Schöne Grüße,
Martin
Hallo,
ich möchte in einem Feld manuell die Zahl „1041“ eingeben. Im Feld rechts daneben soll dann automatisch ein Text aus einer bestehenden Liste (Tabelle) eingefügt werden, die zu dem 1041 gehört.
Lässt sich das mit ihrer Anleitung oder dem Ratgeber umsetzen? Ich möchte das wissen, bevor ich den kaufe. Wenn es kostenlos und einfach ist, wäre es mir natürlich auch recht, weil ich es nur einmalig brauche.
Mit freundlichen Grüßen,
Christian
Konnte es mit der Funktion SVERWEIS lösen. Danke trotzdem.
LG Christian
Ich hätte ne Frage, die für euch wahrscheinlich ganz einfach ist. Kann man die Dropdown Symbole bei den Tabellenüberschriften ausblemden? Ich hab ne Tabelle und die Zeichen verdecken, was in der Zelle steht.
Vielen Dank
Hallo Daniel,
ja, das ist einfach nur die Autofilter-Funktion. Das lässt sich über das Menü Daten|Filtern an- und abschalten.
Schöne Grüße,
Martin
Lieber Martin,
Super-Anleitung. Sie hat nur einen kleinen Haken. Mir fehlt jetzt noch die Information, wie ich dynamische Drop-Down-Listen erstellen kann, wenn (wie in meinem Fall) Warengruppen und Artikel mit Zahlen beginnen :^). Excel bemängelt eine separate Tabelle mit dem Titel 1C.
Und noch eine Frage: wenn einer Warengruppe nur ein Artikel zugewiesen ist, kann dann gleich diese Artikelnummer angezeigt werden?
Freu mich über jeden Tipp. Vielen Dank im voraus.
Hallo Sophie,
wenn die Feldnamen mit Zahlen beginnen, müssen ein paar komplexere Tricks angewendet werden, deren Beschreibung hier definitiv den Rahmen sprengt. Hier kann ich nur auf mein E-Book „Dropdown-Listen in Excel“ verweisen. Neben vielen anderen Tipps wird hier beschrieben, wie man mehrstufige Dropdown-Listen aufbaut, bei denen die Feldnamen keine Rolle spielen. Vielleicht wäre das ja für Dich interessant.
Schöne Grüße,
Martin
Hallo Martin,
kann man im Excel das Symbol für den Filter bunt färben, so dass die Spalten wo die Filter gesetzt wurden besser sichtbar sind?
Beste Grüße
Margarete
Hallo Margarete,
da sieht es leider schlecht aus: Das Filtersymbol lässt sich nicht verändern oder einfärben.
Schöne Grüße,
Martin
Hallo Martin,
1. Super!
2. das funktioniert so lange man die Tabellennamen vergeben kann.
In meinem Fall konnte ich das nicht nutzen, da Leerzeichen, Sonderzeichen in der primären Liste vorhanden sind und diese auch benötigt werden.
Ich musste etwas länger knobeln 😉
Die Lösung ist wirklich nicht ganz einfach, ich kann Sie dir gerne zukommen lassen.
Grüße Jens
Hallo Jens,
hört sich gut an! Wenn Du möchtest, stelle ich Deine Datei gerne hier zum Download für die anderen Leser bereit. Einfach an info@tabellenexperte.de schicken und ich setze dann hier den Link dazu.
Schöne Grüße,
Martin