03.03.2019, 16:13
Hallo liebe Excel-Gemeinde,
ich wende mich mit zwei Fragen an Euch.
Ich habe eine Userfrom erstellt, die eine TextBox und eine ListBoxenthält.
Mit der Eingabe eines Buchstabens in die TextBox, wird dieser mit einer Liste von
Ländern verglichen, die mit diesem Buchstaben beginnen. Die Länder befinden
sich in Spalten nebeneinander angeordnet (Cells(1, i). Bei Übereinstimmung werden
diese in die ListBox übertragen. Das funktioniert ganz gut.
Ich möchte aber den Wert unterhalb des Landes (Cells(2, i) als zweite Spalte in der
Listbox anzeigen lassen.
Zudem bekomme ich einen Fehler, wenn der eingegebene Buchstabe nicht groß geschrieben
ist.
Der Code lautet wie folgt:
Weiß wer Rat?
ich wende mich mit zwei Fragen an Euch.
Ich habe eine Userfrom erstellt, die eine TextBox und eine ListBoxenthält.
Mit der Eingabe eines Buchstabens in die TextBox, wird dieser mit einer Liste von
Ländern verglichen, die mit diesem Buchstaben beginnen. Die Länder befinden
sich in Spalten nebeneinander angeordnet (Cells(1, i). Bei Übereinstimmung werden
diese in die ListBox übertragen. Das funktioniert ganz gut.
Ich möchte aber den Wert unterhalb des Landes (Cells(2, i) als zweite Spalte in der
Listbox anzeigen lassen.
Zudem bekomme ich einen Fehler, wenn der eingegebene Buchstabe nicht groß geschrieben
ist.
Der Code lautet wie folgt:
Code:
Private Sub TextBox2_Change()
Dim laender()
Dim laenderausw()
Dim laenge As Integer
Dim i As Integer
laenge = WorksheetFunction.CountA(Rows(1))
suchbeg = UserForm1.TextBox2.Value
ReDim laender(laenge)
For i = 1 To laenge
If Cells(1, i).Value Like CStr(suchbeg & "*") Then
laender(i) = Cells(1, i).Value
If laender(i) <> "" Then
ReDim Preserve laenderausw(j)
laenderausw(j) = laender(i)
j = j + 1
End If
End If
Next i
With UserForm1.ListBox1
.List = laenderausw
End With
End Sub
Weiß wer Rat?