ich hatte letztens bereits einen Post, in dem es dadrum ging in einer ListBox nach einem Begriff aus einer TextBox zu suchen und alle Zeilen, in denen nicht das angegebene Wort vorkommt zu löschen. Der User Nepumuk hat mir dabei super geholfen - vielen vielen Dank nochmal falls du das liest! :-)
Das Programm funktioniert soweit jetzt schon sehr gut, allerdings werden bei der Suche in der ListBox auch immer die Überschriften gelösct (Kleiner Nachtrag vielleicht, die Daten für die ListBox werden aus einem anderen Tabellenblatt in der Excel besorgt).
Meine Frage also: Ist es möglich, dass die Überschriften nicht durchsucht werden und somit nicht gelöscht werden, wenn ich einen Begriff suche? Die Codes hierfür lauten wie folgt:
Private Sub UserForm_Initialize()
With Worksheets("Datenbank")
ListBox_Liste.List = .Range(.Cells(5000, 1), .Cells(.Rows.Count, 33).End(xlUp)).Value
End With
End Sub
Private Sub CommandButton_Suchen_Click()
Dim lngRow As Long, lngColumn As Long
Dim blnFound As Boolean
Dim strText As String
strText = TextBox1.Text
With ListBox_Liste
For lngRow = .ListCount - 1 To 0 Step -1
blnFound = False
For lngColumn = 0 To .ColumnCount - 1
If InStr(1, .List(lngRow, lngColumn), strText, vbTextCompare) 0 Then
blnFound = True
Exit For
End If
Next
If Not blnFound Then Call .RemoveItem(lngRow)
Next
End With
End Sub
Ich dachte, dass man vielleicht in der "For lngColum = 0 ...." einfach eine 1 eingeben könnte, aber das hat leider nicht funktioniert. Hat jemand noch eine andere Idee? P.S. ich bin jetzt gleich in der Uni und werde vermutlich daher nicht direkt auf Antworten hier antworten können, werde es aber sobald ich wieder zuhause bin direkt nachholen!
Vielen Dank für eure Mühen schonmal.
Liebe Grüße,
Steph