ihr habt mir zu diesem Thema schon mal geholfen, aber mein Problem gestaltet sich mittlerweile etwas anders. Im Archiv konnte ich bislang auch keine passende Antwort finden.
Folgendes Problem:
Ich habe zwei Comboboxes. In der ersten sollen die Werte aus Tabelle1, SpalteA im Dropdown erscheinen. In Spalte A kommen verschiedene Werte mehrfach vor. Des weiteren gibt es hier auch Leerzellen. Im Dropdown von ComboBox1 sollen die Werte jedoch nur einmal erscheinen und die Leerzellen sollen ignoriert werden.
Soweit, sogut, das funktioniert. (siehe untenstehenden Code)
Jetzt zu ComboBox2:
Für jede Auswahl in ComboBox1 sollen in ComboBox2 die passenden Werte aus Spalte B im Dropdown zur Auswahl stehen.
Mit Case und SourceRow komme ich hier nicht weiter, denn ich kann die Anzahl der Cases und den SourceRow-Bereich nicht vorhersagen. Die Anzahl der Einträge in Spalte A und B können sich ändern. Mit AddItem bin ich an der Stelle schlichtweg überfordert. (Das Problem sitzt mal wieder zwischen der Tastatur und dem Stuhl)
Bsp:
SpalteA--------SpalteB
A-------------------O1
A-------------------O2
A-------------------O3
A-------------------O4
B-------------------U1
B-------------------U2
C-------------------E1
X-------------------F1
X-------------------F2
Hier mein funktionierender Code für die Auswahl in ComboBox1:
Option Explicit
Private Sub UserForm_Initialize()
Dim c As Long
Dim i As Long
Dim r%
r = Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row
With Me
For c = 1 To r
i = c + 1
If Sheets("Tabelle1").Cells(i, 1) <> Sheets("Tabelle1").Cells(c, 1) _
And Sheets("Tabelle1").Cells(i, 1) <> "" Then
With .ComboBox1
.AddItem Sheets("Tabelle1").Cells(i, 1)
End With
End If
Next c
End With
' Die erste Zeile wird auf diese Art nicht als Item erfasst. Dies ist hier gewollt,
' da in der ersten Zeile die Spalten-Überschrift steht.
End Sub
und wie geht's jetzt weiter für ComboBox2???
Kann mir jemand helfen?
ich wäre euch sehr dankbar - ich sitz' schon den halben Tag an dem Problem
Gruß
Christoph