habe mit dem unten aufgeführten Quelltext eine Suche auf einem Tabellenblatt.
Nun möchte ich aber die Suche nicht mehr auf dem Tabellenblatt, sondern in einer Userform haben. Hab schon einiges ausprobiert aber komme nicht weiter, hoffe mir kann da jemand weiter helfen. Ein- und Ausgabe soll in der Text- bzw. Listbox im Userform erfolgen.
MfG
Michael
Option Explicit
Private Sub TextBox1_Change()
Dim arr() As String
Dim i As Long
Dim C As Range
Dim lCount As Long
Dim Rng As Range
Dim firstAddr As String
Worksheets("Suche").Range("B7:B10000").ClearContents
With Worksheets("Lager")
Set Rng = .Range("A2:A" & .Range("A65536").End(xlUp).Row)
End With
lCount = WorksheetFunction.CountIf(Rng, TextBox1.Text & "*")
If lCount = 0 Then Exit Sub
ReDim arr(1 To lCount)
i = 1
With Rng
Set C = .Find(TextBox1.Text & "*", lookat:=xlWhole)
If Not C Is Nothing Then
firstAddr = C.Address
Do
arr(i) = C.Text
i = i + 1
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> firstAddr
End If
End With
Worksheets("Suche").Range("B7:B" & 6 + lCount) = WorksheetFunction.Transpose(arr())
End Sub