14.09.2018, 14:11
Hallo,
musste mich vorher noch nie mit Excel beschäftigen und bin dementsprechend blutiger Anfänger. :)
Wie man eine Dropdown-Liste erstellt, habe ich bereits herrausgefunden und wie man mehrere Einträge aus dieser Liste zulässt auch.
Für letzteres habe ich folgenden Code aufgetrieben:
Jetzt möchte ich aber, dass, wenn in der einen Zelle ein bestimmter Begriff steht, in der anderen Zelle nur bestimmte Werte aus dem Dropdown-Menü ausgewählt werden können.
Fiktives Beispiel:
Reihe A | Reihe B
Spalte 1 Europa | Dropdownmenü mit der Auswahl: Hund, Katze, Maus
Spalte 2 Afrika | Dropdownmenü mit der Auswahl: Elefant, Tiger, Nashorn
Spalte 3 Asien | Dropdownmenü mit der Auswahl: Drache, Panda, Winkekatze
Die Auswahl Europa, Afrika, Asien erfolgt ebenfalls per Dropdown.
Ich hoffe, ich konnte mein Anliegen verständlich machen.
Liebe Grüße
Susi
musste mich vorher noch nie mit Excel beschäftigen und bin dementsprechend blutiger Anfänger. :)
Wie man eine Dropdown-Liste erstellt, habe ich bereits herrausgefunden und wie man mehrere Einträge aus dieser Liste zulässt auch.
Für letzteres habe ich folgenden Code aufgetrieben:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'** Mehrfachauswahl über DropDown-Liste (Gültigkeitsprüfung)
'** Einfügen im Code-Container des betreffenden Arbeitsblattes
'** Dimensionierung der Variablen
Dim rngDV As Range
Dim wert_old As String
Dim wertnew As String
'** Errorhandling
On Error GoTo Errorhandling
'** Mehrfachauswahl im definierten Bereich (Bsp. B4:B14) durchführen
If Not Application.Intersect(Target, Range("B4:B14")) Is Nothing Then
'**Range definieren
Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)
If rngDV Is Nothing Then GoTo Errorhandling
'** Prüfen, ob eine gültige Zelle ausgewählt wurde und Werte eintragen
If Not Application.Intersect(Target, rngDV) Is Nothing Then
Application.EnableEvents = False
wertnew = Target.Value
Application.Undo
wertold = Target.Value
Target.Value = wertnew
If wertold <> "" Then
If wertnew <> "" Then
Target.Value = wertold & ", " & wertnew
End If
End If
End If
Application.EnableEvents = True
End If
Errorhandling:
Application.EnableEvents = True
End Sub
Jetzt möchte ich aber, dass, wenn in der einen Zelle ein bestimmter Begriff steht, in der anderen Zelle nur bestimmte Werte aus dem Dropdown-Menü ausgewählt werden können.
Fiktives Beispiel:
Reihe A | Reihe B
Spalte 1 Europa | Dropdownmenü mit der Auswahl: Hund, Katze, Maus
Spalte 2 Afrika | Dropdownmenü mit der Auswahl: Elefant, Tiger, Nashorn
Spalte 3 Asien | Dropdownmenü mit der Auswahl: Drache, Panda, Winkekatze
Die Auswahl Europa, Afrika, Asien erfolgt ebenfalls per Dropdown.
Ich hoffe, ich konnte mein Anliegen verständlich machen.
Liebe Grüße
Susi