Hej! Hej. Men där söker man väl inte i valfri kolumn?? Med FindItem kan du söka i textkolumnen(första kolumnen), bland subitems eller tagegenskapen.Hur söka i listview??
Jag har ett problem när jag skall söka i en listview.
Jag har flera kolumner i en listview och vill söka i valfri kolumn... hur gör jag??
KristerSv: Hur söka i listview??
Titta i hjälpen efter ListView control och method FindItem.
Där finns ett himla bra exempel.
/UffeSv: Hur söka i listview??
Som jag fattar det är det bara via "index" eller "key" som man söker på där..... jag vill kunna söka i vilken kolumn som helst....Sv: Hur söka i listview??
Om du bara vil söka i en specefik kolumn. Kan du göra på följande sättet:
<code>
Public Function FindListItem(ListItems As ListItems, Find As String, Optional Column As Long = 1) As ListItem
Dim Item As ListItem
If Column Then
For Each Item In ListItems
If Item.SubItems(Column) = Find Then
Set FindListItem = Item
Exit For
End If
Next
Else
For Each Item In ListItems
If Item.Text = Find Then
Set FindListItem = Item
Exit For
End If
Next
End If
End Function
</code>
Vill du söka efter mer än ett Item kan du lägga till dem i en Collection och retunera den istället:
<code>
Public Function FindListItems(ListItems As ListItems, Find As String, Optional Column As Long = 1) As Collection
Dim Item As ListItem
Set FindListItems = New Collection
If Column Then
For Each Item In ListItems
If Item.SubItems(Column) = Find Then
FindListItems.Add Item
End If
Next
Else
For Each Item In ListItems
If Item.Text = Find Then
FindListItems.Add Item
End If
Next
End If
End Function
</code>