Suche mit Sternchen
03.01.2007 15:34:45
otto
allen alles Gute im neuen Jahr.
Ich lasse mir in einer Listbox alle Übereinstimmungen mit TextBox1 auflisten.
Gebe ich z.B bf... ein erscheinen alle Einträge die mit bf beginnen.
Nun möchte ich erreichen, dass auch Einträge aufgelistet werden die den Inhalt von Textbox1 irgendwo enthalten.
Z.B. soll bei Eingabe von 503 auch angezeigt werden: BR20-1.0503
Z.B. soll bei Eingabe von r20 alle Einträge angezeigt werden, die die Zeichenfolge r20 enthalten (z.B. BR20-1.0122, WR20-1.7227)
Welche Zeile muss ich wie ändern?
Private Sub TextBox1_Change()
Dim arr() As Variant, Tmp As Variant, wks As Worksheet, zelle
Dim index As Integer
Dim X, iCount
zelle = Cells(12, 4)
Set wks = Sheets("Stamm")
X = wks.Range("V65536").End(xlUp).Row
Tmp = wks.Range("V4:CH" & 4 + X)
X = X - 4
If TextBox1 = "" Then
On Error GoTo weiter
ReDim arr(0 To 2, 0 To X - 1)
For index = 1 To UBound(Tmp, 1)
arr(0, iCount) = Tmp(index, 4)
arr(1, iCount) = Tmp(index, 65)
arr(2, iCount) = Tmp(index, 1)
Next
weiter:
arr = WorksheetFunction.Transpose(arr)
ListBox1.List = arr
Else
For index = 1 To UBound(Tmp, 1)
If LCase(Left(Tmp(index, 4), Len(TextBox1))) = LCase(TextBox1) Then
ReDim Preserve arr(0 To 2, 0 To iCount)
arr(0, iCount) = Tmp(index, 4)
arr(1, iCount) = Tmp(index, 65)
arr(2, iCount) = Tmp(index, 1)
iCount = iCount + 1
End If
Next
End If
If iCount <> 0 Then
ListBox1.Column = arr
End If
End Sub
Gruß
otto