Um einen Eintrag innerhalb eines ListView-Controls zu suchen, bedient man sich i.a.R. der FindItem-Methode. Einen kleinen Nachteil hat die integrierte Suchfunktion allerdings. Es lässt entweder nur in den Text-Eigenschaften (also in der ersten Spalte) oder in den SubItems (also alle weiteren Spalten) suchen. Eine Kombination, so dass immer autom. alle Spalten (Text und SubItems) gibt es leider nicht. Also behelfen wir uns wieder einmal selbst ' Volltext-Suche im ListView ' Rückgabe: Index (Zeile) der Fundstelle Public Function lvw_Search(lvw As ListView, _ ByVal sText As String, _ Optional ByVal lStartRow As Integer = 1) As Integer Dim itemX As ListItem Dim i As Integer Dim u As Integer Dim iRow As Integer ' Groß-/Kleinschreibung ignorieren sText = LCase$(sText) For i = lStartRow To lvw.ListItems.Count Set itemX = lvw.ListItems(i) With itemX If InStr(LCase$(.Text), sText) > 0 Then ' Gefunden in der Text-Eigenschaft iRow = i: Exit For Else ' SubItems durchsuchen For u = 1 To lvw.ColumnHeaders.Count - 1 If InStr(LCase$(.SubItems(u)), sText) > 0 Then ' Gefunden in einem der SubItems iRow = i: Exit For End If Next u End If End With Next i lvw_Search = iRow End Function Der Aufruf der Funktion ist denkbar einfach:
Um z.B. alle Fundstellen zu ermitteln, könnte man folgenden Code einsetzen: Dim iRow As Integer iRow = 1 Do Until iRow < 1 iRow = lvw_Search(ListView1, "irgendwas", iRow) If iRow > 0 Then ' Eintrag gefunden MsgBox "Gefunden in Zeile: " & CStr(iRow) End If Loop Dieser Tipp wurde bereits 6.988 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (einschl. Beispielprojekt!) Ein absolutes Muss - Mehr als 650 MByte geballtes Wissen! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - Online-Update-Funktion u.v.m. |
Unser Dauerbrenner! ![]() 650 MB geballtes Wissen aus 6 Jahren vb@rchiv Online-Update-Funktion Entwickler-Vollversionen u.v.m. Buchempfehlung Tipp des Monats Dieter Otter 2-dimensionales Array nach beliebiger Spalte sortieren Mit dieser Funktion lässt sich ein 2-dimensionales Array beliebiger Daten nach einer bestimmten Spalte sortieren sevMail für VB/VBA ![]() Mails abrufen und senden - ganz easy :-) Mailversand mit ZIP-Funktion, Unterstützung von SMTP-AUTH (authentifizierter Mailversand), Abholen von Mails mit Vorschau, Mail-Parser zum Decodieren aller MIME-Parts und Anlagen, RTF2HTML-Funktion u.v.m. |
||||||||||||||||
|
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |
|||||||||||||||||


Volltextsuche im ListView-Control




