ich versuche gerade die ComboBox in einer UserForm mit mehreren Spalten zu befüllen.
Ich will, dass der Nutzer in der ComboBox die Einträge in den Spalten "A" bis "I" aus der Tabelle "Punkte" anwählt, dann soll diese Zeile in einem anderen Tabellenblatt ("Abrechnung") eingetragen und weiterverarbeitet werden.
Aktuell habe ich das so gelöst, dass ich mir in Spalte "K" per TEXT()-Formel im Tabellenblatt alle Einträge der Spalten "A" - "I" zusammenklebe und als EINEN Eintrag in die ComboBox einlese. Das ist aber suboptimal, weil ich sie dann hinterher wieder auseinander schneiden muss.
Ich bräuchte also eine Formel zum Befüllen der ComboBox mit den Spalten A - I; und dann eine Möglichkeit, die Daten (ggf.) auch selektiv weiter zu verarbeiten.
Mein Code sieht aktuell so aus (ich hole mir nur EINEN Zahlen Wert (Umfang) wieder "raus", indem ich ihn von rechts abtrenne, mit "\" ):
Option Explicit
Private Sub CommandButton5_Click()
On Error Resume Next
Dim erste_freie_ZeileA As Integer
Dim intLeerPos As Integer
Dim intZeichenPos As Integer
Dim PB_Länge As Integer
Dim Projektbeschreibung As String
Dim PB_übertragen As String
Dim AusgelesenerUmfang As String
Dim Umfang As Integer
Projektbeschreibung = ComboBox1.Text
PB_Länge = Len(Projektbeschreibung)
intLeerPos = PB_Länge - InStr(Projektbeschreibung, "\")
intZeichenPos = InStr(Projektbeschreibung, "\") - 1
PB_übertragen = Left(Projektbeschreibung, intZeichenPos)
AusgelesenerUmfang = Right(Projektbeschreibung, intLeerPos)
Umfang = Val(AusgelesenerUmfang)
erste_freie_ZeileA = Sheets("Abrechnung").Range("A65536").End(xlUp).Offset(1, 0).Row
Sheets("Abrechnung").Cells(erste_freie_ZeileA, 1) = PB_übertragen
Sheets("Abrechnung").Cells(erste_freie_ZeileA, 2) = Umfang
Unload Me
End Sub
Private Sub UserForm_Initialize()
Dim Repeatings As Integer
For Repeatings = 2 To Sheets("Punkte").Range("A65536").End(xlUp).Row
ComboBox1.AddItem Sheets("Punkte").Cells(Repeatings, 11)
Next
End Sub
DANKE!