Clever-Excel-Forum

Normale Version: [Excel] einspaltige Combobox in Userform mehrspaltig füllen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Erstelle für dieses Beispiel eine Userform "Userform" mit einer Combobox "ComboBox1"
Daten für die Combobox trägst Du in Tabelle1 ab A1 ein. In die einspaltige Combobox werden hier im Beispiel zwei Spalten eingefügt und zur Anzeige und Auswahl gebracht.

Dialog UserForm1
Option Explicit 
'erstellt von schauan www.xltips.de

Private Sub ComboBox1_Change()
'Meldung ausgeben
'Hinweis: bei Split ist das Leerzeichen standardmaessig das Trennzeichen
'dadurch "," als Trenner beim Nachname das Komma
'beim Vorname passt das Leerzeichen als Trennzeichen
MsgBox "Gewählt wurde: " & ComboBox1.Value & vbLf & _
"Name: " & Split(ComboBox1.Value, ",")(0) & vbLf & _
"Vorname: " & Split(ComboBox1.Value)(1) & vbLf & _
"gewählt in Combobox-Zeile: " & ComboBox1.ListIndex & vbLf & _
"steht in Blattzeile: " & ComboBox1.ListIndex + 2
End Sub

Private Sub UserForm_Initialize()
'Variablendeklarationen
'Long
Dim loLastRow&, iCnt&
'Array
Dim arrCombo
'letzte Zeile des Datenberechs ermitteln
loLastRow = Cells(Rows.Count, 1).End(xlUp).Row
'Array dimensionieren, abzueglich Ueberschriftenzeile
Redim arrCombo(1 To loLastRow - 1)
'Schleife ueber alle Eintraege des Datenbereichs
For iCnt = 2 To loLastRow
'Array mit Inhalt der Zeile aus Spalte A und B fuellen,
'mit Komma getrennt
arrCombo(iCnt - 1) = Cells(iCnt, 1) & ", " & Cells(iCnt, 2)
'naechste Schleife ueber alle Eintraege des Datenbereichs
Next
'Combobox mit Array fuellen
ComboBox1.List = arrCombo
End Sub
TypNameEigenschaften
ComboBoxComboBox1
Height:42
Left:42
Top:42
Width:144

Arbeitsblatt mit dem Namen 'Tabelle1'
 AB
1NameVorname
2MustermannMax
3ArielClementine
Diese Tabelle wurde mit Tab2Html (v2.5.0) erstellt. ©Gerd alias Bamberg

Stichworte zur Suche in unserem Excel-Forum:
Excel Combobox Auswahlbox Auswahlfeld Auswahlliste
Tabelle Userform Dialog