vorweg, allen einen guten rutsch ins neue Jahr und viel Gesundheit !
Ich habe eine Tabelle mit Daten von Spalte B bis Spalte L und eine Userform mit einer Listbox.
Auf dieser Listbox ist eine ComboBox, die bisher in Spalte C filtert.
Wenn ich den Buchstaben s in die ComboBox eingebe, wird schon alles was mit S anfängt gelistet.
Funktioniert einwandfrei.
Ich möchte gern das bei der Eingabe eines Buchstaben oder auch Wort aber jetzt in Spalte D+E nach dem Wort oder auch Buchstaben
gefiltert wird.
Ist das möglich ?
Hier das bestehende Makro :
Public Sub ComboBox1_Change()
Dim arr, arrData
Dim i As Long, cnt As Long
Dim loletzteA As Long
Dim rng As Range
With Worksheets("Adressen")
loletzteA = .Cells(.Rows.Count, 3).End(xlUp).Row 'hier auf 2 (vorher1 )gesetzt da spalte 1nicht mehr genutzt wird
arr = .Range("B3:L" & loletzteA).Value
End With
With ListBox1
If ComboBox1.Value = "" Or ComboBox1.ListIndex = 0 Then .List = arr: Exit Sub
.RowSource = ""
.Clear
ReDim arrData(1 To UBound(arr), 1 To UBound(arr, 2))
For i = LBound(arr) To UBound(arr)
If ComboBox1 = arr(i, 2) Then
cnt = cnt + 1
arrData(cnt, 1) = arr(i, 1)
arrData(cnt, 2) = arr(i, 2)
arrData(cnt, 3) = arr(i, 3)
arrData(cnt, 4) = arr(i, 4)
arrData(cnt, 5) = arr(i, 5)
arrData(cnt, 6) = arr(i, 6)
arrData(cnt, 7) = Format(arr(i, 7), "currency")
End If
Next
If cnt = 0 Then Exit Sub
arrData = Application.Transpose(arrData)
ReDim Preserve arrData(1 To UBound(arr, 2), 1 To cnt)
If cnt = 1 Then .Column = arrData Else .List = Application.Transpose(arrData)
End With
Ich habe keine Ahnung was ich da ändern muss, Anfang des Jahres hatte ein Uwe geholfen.
mfg
wolfgang