Excel Dropdownmenüs zurücksetzen

kex03

Cadet 3rd Year
Registriert
Okt. 2011
Beiträge
48
Mahlzeit ComputerBase Community,

ich habe folgendes Problem und hoffe, dass mir jemand vielleicht helfen kann:

Ich müsste eine Excel Datei erstellen, bei der Drop down Menüs verwendet werden und diese quasi rückläufig miteinander verkettet sind, sprich:

Bisher habe ich folgedes: Tabelle 1 hat Wert A ausgewählt, weswegen Tabelle 2 auch nur die zugehörigen Daten für den Wert A anzeigt, wenn man das DropDownMenü ausfahren lässt. Soweit so gut.

Jetzt möchte ich allerdings, wenn man Tabelle 1 von Wert A auf Wert X verändert, dass sich Tabelle 2 zurücksetzt.


Ich bin mir sicher, dass das Thema sicher schonmal angesprochen wurde, allerdings bin ich seit guten 30 Minuten danach am suchen und finde einfach nichts :confused_alt:
Dementsprechend würde es mir auch schon reichen, wenn mich einfach jemand in die richtige Richtung drückt, da das Projekt etwas Zeitdruck hat.


Vielen lieben dank schonmal im Voraus für eure Hilfe
 
Wie sind die Menüs integriert?

Als Liste in einer Zelle?
Als Formular-Element?
Als ActiveX-Element?
 
mac4life schrieb:
Wie sind die Menüs integriert?

Als Liste in einer Zelle?
Als Formular-Element?
Als ActiveX-Element?

Als Liste in einer Zeile über den Reiter Daten -> Datenüberprüfung
 
Hallo,

Wenn ich dich richtig verstanden hab, dann ungefähr wie folgt :)

du hast 2 DropDown-Listen, die du über Datenüberprüfung erstellst. Dazu legst du eine Tabelle an, die die Inhalte von Liste 1 und Liste 2 hat. Diesen gibst du im Namenmanager eine Definition. DropDown1 ist dann die Liste mit der Quelle "=D_1", Dropdown2 mit "=D_2". D_2 wird über einen WVERWEIS oder dergleichen dynamisch angepasst, jenachdem, was in DropDown1 steht.

blöd gesagt, hier n Bild :)

das Einzige was es nicht alleine macht, ist Dropdown2 zu leeren. Dafür bräuchte man Makros die beim Ändern von DropDown1 ausgelöst werden.
 

Anhänge

  • 1.PNG
    1.PNG
    16,4 KB · Aufrufe: 320
  • 2.PNG
    2.PNG
    9,6 KB · Aufrufe: 322
  • 3.PNG
    3.PNG
    10,7 KB · Aufrufe: 332
spcqike schrieb:
Hallo,

Wenn ich dich richtig verstanden hab, dann ungefähr wie folgt :)

du hast 2 DropDown-Listen, die du über Datenüberprüfung erstellst. Dazu legst du eine Tabelle an, die die Inhalte von Liste 1 und Liste 2 hat. Diesen gibst du im Namenmanager eine Definition. DropDown1 ist dann die Liste mit der Quelle "=D_1", Dropdown2 mit "=D_2". D_2 wird über einen WVERWEIS oder dergleichen dynamisch angepasst, jenachdem, was in DropDown1 steht.

blöd gesagt, hier n Bild :)

das Einzige was es nicht alleine macht, ist Dropdown2 zu leeren. Dafür bräuchte man Makros die beim Ändern von DropDown1 ausgelöst werden.


Sorry das ich erst so spät Antworte, gab einiges zu tun.

Ich werde es sobald ich kann ausprobieren und dann Bericht erstatten - vielen lieben dank für die Hilfe!

Edit: Das was du beschrieben hast, habe ich bereits gemacht.

Spich: Liste A enthält Hersteller C, D und E
Liste B enthält den Typen von jeweils Hersteller C, D und E und zeigt auch diese entsprechend an ( Hab das ganze mit =INDIREKT realisiert)

Genau diese Makros, die Liste B leeren, wenn Liste A geändert wird, brauche ich. Da ich allerdings mit VBA sehr wenig bisher zu tun hatte, habe ich leider keinerlei Ansätze.
 
Zuletzt bearbeitet:
Hallo,

du öffnest den VBA Editor mit ALT+F11 und fügst in Tabelle1 (oder deine jeweilige Tabelle, die es betrifft) das Makro ein

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Target.Worksheet.Range("C5")) Is Nothing Then Range("C6").Clear
End Sub

C5 und C6 musst du entsprechend ändern
C5 = Dropdown1
C6 = Dropdown2

abspeichern als *.xlsm
 
  • Gefällt mir
Reaktionen: kex03
Scheint soweit schon fast zu funktionieren. Einziges Problem ist, dass die gesamte Liste und die Hinterlegte Farbe damit ebenfalls gelöscht wird. Habe das Problem damit gelöst, dass ich

If Not Intersect(Target, Target.Worksheet.Range("C5")) Is Nothing Then Range("C6").Clear

mit If Not Intersect(Target, Target.Worksheet.Range("C5")) Is Nothing Then Range("C6").ClearContent

ersetzt habe.

Tausend dank für die Hilfe - wieder was dazu gelernt :daumen:
 
  • Gefällt mir
Reaktionen: spcqike
Zurück
Oben