Hallo Gemeinde,
ich habe eine listbox und ein textbox um die listbox zu filtern
Listbox zum füllen:
Private Sub UserForm_Activate() Dim iLastRow As Integer With Worksheets("Daten") iLastRow = .Cells(.Rows.Count, 1).End(xlUp).row arrData = .Range(.Cells(2, 1), .Cells(iLastRow, 3)).Value End With With ListBox1 ' .ColumnCount = 8 ' .ColumnWidths = "5cm;5cm;4cm;2cm;3cm;1,5cm;2cm;3cm;" .ColumnHeads = False .List() = arrData ' .ListIndex = .ListCount - 1 TextBox1.SetFocus End With Label1 = ListBox1.ListCount & " Daten " End Sub
für den Textbox suchen:
Private Sub TextBox1_Change() 'Listbox1 filtern Dim zeile As Long Me.ListBox1.Clear Me.ListBox1.List = arrData For zeile = Me.ListBox1.ListCount - 1 To 0 Step -1 If Not LCase(Me.ListBox1.List(zeile, 0)) Like LCase(Me.TextBox1) & "*" Then Me.ListBox1.RemoveItem (zeile) Next Label2 = ListBox1.ListCount & " Daten gefunden " End Sub
Beim Tippen in der TextBox kommt mir vor wie in einer Zeitlupe,
gibt es änderung die ich vornehmen kann um beim tippen schon Ergebnisse zu haben.
LG Antonio