ich habe folgendes Problem und würde mich über einen Lösungsvorschlag sehr freuen.
In einer UserForm-ListBox werden 4 Spalten aus einem Tabellenblatt wiedergegeben (Kreis/Bundesland/Leistungserbringer/Anbieter). Wenn ich auf eine Zeile in der ListBox klicke wird der Inhalt wiederum verteilt auf einige TextBoxen und ComboBoxen dargestellt. Das funktioniert auch, nur mit einem kleinen Haken. Sobald der gleiche Text in Spalte 1 mehrmals vorkommt (mehrere gleiche Kreise mit verschiedenen Leistungserbringern) wird immer nur der erste Eintrag in die Boxen übernommen. Das gleiche Problem hatte ich schon mal als ich noch die Bundesländer in Spalte 1 hatte, wo es ja dann viele gleiche Zeilen gibt mit unterschiedlichen Kreisen.
Hier der Code dazu:
Private Sub ListBox1_Click() ' Ereignisroutine ListBox
Dim lZeile As Long
'Löschen der Inhalte
TextBoxLeistungserbringer = ""
TextBoxDatumEinfuehrung = ""
TextBoxDatumNutzung = ""
TextBoxDatumStand = ""
TextBoxKommentarfeld = ""
ComboBoxAnbieter = ""
ComboBoxProdukt = ""
If ListBox1.ListIndex >= 0 Then 'Nur wenn ein Eintrag selektiert/markiert ist
lZeile = 2 'Start in Zeile 2, Zeile 1 sind Überschriftrn
Do While Tabelle1.Cells(lZeile, 1).Value "" 'Schleife solange etwas in der ersten Spalte _
in Tabelle 1 drin steht
'Text finden und übertragen
If ListBox1.Text = Tabelle1.Cells(lZeile, 1).Value Then
'TextBoxen füllen
TextBoxKreis = Tabelle1.Cells(lZeile, 1).Value
TextBoxBundesland = Tabelle1.Cells(lZeile, 2).Value
TextBoxLeistungserbringer = Tabelle1.Cells(lZeile, 3).Value
ComboBoxAnbieter = Tabelle1.Cells(lZeile, 4).Value
ComboBoxProdukt = Tabelle1.Cells(lZeile, 5).Value
TextBoxXX = Tabelle1.Cells(lZeile, 6).Value
TextBoxDatumEinfuehrung = Tabelle1.Cells(lZeile, 7).Value
TextBoxDatumNutzung = Tabelle1.Cells(lZeile, 8).Value
TextBoxDatumStand = Tabelle1.Cells(lZeile, 9).Value
TextBoxKommentarfeld = Tabelle1.Cells(lZeile, 10).Value
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End If
End Sub
Ich denke, dass das Problem an der Stelle "Text finden und übertragen" liegt, der erste übereinstimmende Text und die Spalten daneben werden übernommen auch wenn dahinter erst der eigentlich ausgewählte Kreis kommt. Wie kann ich die Boxen in Abhängigkeit von zwei Spalten anstelle nur der ersten Spalte füllen? Könnte ich die Spalten auch frei definieren, z.B. dritte und vierte?