ich hätte da eine kurze Frage:
Ich möchte 3 Comboboxen voneinander abhängig füllen. Das Problem was ich dabei leider habe ist das, dass die Combobox 1 & 2 nur Zahlen enthalten. Combobox 2 wird nicht gefüllt, da Combobox 1 nur eine Zahl enthält. Sobald ich der Zahl noch zusätzlich einen Buchstaben vergebe, wird der Eintrag gefunden und die zweite Combobox wird entsprechend gefüllt.
Ist die gegenseitige Abhängikeit bzgl. dem Füllen nur mit Ziffern nicht möglich?
Anbei der Code:
Option Explicit
Const C_mstrDatenblatt As String = "Archiv"
Dim mobjDic As Object
Dim mlngLast As Long
Dim mlngZ As Long
Private Sub ComboBox1_Enter()
Set mobjDic = CreateObject("Scripting.Dictionary")
For mlngZ = 2 To mlngLast
mobjDic(Worksheets(C_mstrDatenblatt).Cells(mlngZ, 2).Value) = 0
Next
ComboBox1.List = mobjDic.keys
Set mobjDic = Nothing
End Sub
Private Sub ComboBox2_Enter()
Set mobjDic = CreateObject("Scripting.Dictionary")
With Worksheets(C_mstrDatenblatt)
For mlngZ = 2 To mlngLast
If .Cells(mlngZ, 2).Value = Me.ComboBox1.Value Then
mobjDic(.Cells(mlngZ, 3).Value) = 0
End If
Next
End With
Me.ComboBox2.List = mobjDic.keys
Set mobjDic = Nothing
End Sub
Private Sub ComboBox3_Enter()
'Dritte Combobox in Abhängigkeit von Combobox 1 + 2.
Me.ComboBox3.Clear
With Worksheets(C_mstrDatenblatt)
For mlngZ = 2 To mlngLast
If .Cells(mlngZ, 2).Value = ComboBox1.Value And .Cells(mlngZ, 3).Value = ComboBox2.Value _
Then
ComboBox3.AddItem .Cells(mlngZ, 4).Value
End If
Next
End With
End Sub
Private Sub UserForm_Initialize()
'Bei Start der Userform wird die unterste Zeile in Spalte A ermittelt
mlngLast = Worksheets(C_mstrDatenblatt).Cells(Rows.Count, 1).End(xlUp).Row
End Sub
Gruß Markus