Wie kann ich daten von mehreren Spalten in eine Combobox einfügen

2 Antworten

Dafür benötigst du kein VBA.

Ich würde mir in einer Hilfsspalte E die Spalten A, B, C und D verketten (=A1&B1&C1&D1). Dann gehst du in der Zelle, in der die Auswahl angezeigt werden soll und legst über "Daten/Datenüberprüfung/Datenüberprüfung..." eine Datenüberprüfung fest. Wähle dort "Liste" und als Quelle die Spalte E.

Woher ich das weiß:Berufserfahrung – Programmierer

Suboptimierer hat Recht, kein VBA nötig.

Aber seine Lösung ist nur suboptimal, es geht ohne Verketten und ohne zusätzliche Spalte:

in die Eigenschaften der Combobox gehen und

ColumnCount-Eigenschaft auf 4 setzen

RowSource-Eigenschaft auf Tabelle10!A1:D28

Wobei Tabelle10 durch den Namen deiner Tabelle ersetzt werden muss und die 28 mit der letzten Zeile, die du haben möchtest.

Im VBA würde es so aussehen:

Private Sub UserForm_Activate()
Dim MyRange As String
    
ComboBox1.ColumnCount = 4
MyRange = "Tabelle10!A1:D" & Sheets("Tabelle10").UsedRange. _
           SpecialCells(xlLastCell).Row
           
ComboBox1.RowSource = MyRange
End Sub

Hier ist die letzte Zeile sogar dynamisch.