Habe eine Adressauswahl (ca. 800 Einträge) via ListBox gebastelt. Innerhalb dieser suche ich per TextBox nach Namen. Doch das Einlesen bzw. offnen ist sehr langsam. Das liegt sicher an meinem Hobycode. Kann man den noch etwas anschubsen?
Im weteren gefallen mir die Suchresultate noch nicht. Wenn ich einen Namen suche, muss ich den genau so eingeben, wie er in der Liste steht, sonst finde ich nix. Ich schreibe Vorname und Nachname in die selbe Zelle, da muss ich immer beide Namen tippen, um fündig zu werden. Wenn er doppelt existiert, finde ich nichts. Gibt es eine Möglichkeit, dass bereits die Suche nach dem Nachnamen Hitts erzeugt? Und wenn mehrere zu finden sind, dass mir entweder alle gleichzeitig markiert werden, oder per weiter suchen (einfach den Suchen Button mehrmals betätigen) einer nach dem anderen markiert wird?
Wäre super, wenn sich das mal jemand anschauen könnte.
Private Sub CommandButton1_Click()
Dim iRow As Integer
Dim iCol As Integer
For iRow = 0 To lstAdressen.ListCount - 1
For iCol = 0 To lstAdressen.ColumnCount - 1
If lstAdressen.List(iRow, iCol) = TextBox1.Text Then
lstAdressen.Selected(iRow) = True
End If
Next iCol
Next iRow
End Sub
Sub UserForm_Initialize()Dim wks As Worksheet
Dim ii As Integer
Set wks = Sheets("Adressen")
With wks
For ii = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
lstAdressen.ColumnCount = 10
If Not IsEmpty(.Cells(ii, 1)) Then
lstAdressen.AddItem Cells(ii, 1).Value
lstAdressen.List(lstAdressen.ListCount - 1, 0) = .Cells(ii, 1).Value
lstAdressen.List(lstAdressen.ListCount - 1, 1) = .Cells(ii, 2).Value
lstAdressen.List(lstAdressen.ListCount - 1, 2) = .Cells(ii, 3).Value
lstAdressen.List(lstAdressen.ListCount - 1, 3) = .Cells(ii, 4).Value
lstAdressen.List(lstAdressen.ListCount - 1, 4) = .Cells(ii, 5).Value
lstAdressen.List(lstAdressen.ListCount - 1, 5) = .Cells(ii, 6).Value
End If
Next ii
End With
End Sub