Listview

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 1 juin 2003 à 15:47
zimzoum Messages postés 3 Date d'inscription samedi 4 janvier 2003 Statut Membre Dernière intervention 10 juillet 2004 - 10 juil. 2004 à 11:50
Bonjour à tout les experts et les débutants comme moi,

J'ai créer une listview ou j'ai des données, et ou je voudrais faire un tri par nom, exemple :

Si je tape TOTO, je voudrais faire la recherche dans ma listview de tout les items qui corresponde à TOTO, je les gardes, et les autres qui ne correspondent pas a TOTO, je voudrais les éffacer de ma listview voici mon code qui fait le contraire !!!


Dim intSelectedOption As Integer
Dim strFindMe As String
Dim longindex As Long

strFindMe = InputBox("Rechercher dans ")
intSelectedOption = lvwText
Dim itmFound As ListItem ' Variable itmFound.

Set itmFound = ListView1. _
FindItem(strFindMe, intSelectedOption, , lvwWholeWord)

longindex = itmFound.Index

If itmFound Is Nothing Then
MsgBox "Aucune concordance"
Exit Sub
Else

For T = 0 To ListView1.ListItems.Count
Set itmFound = ListView1. _
FindItem(strFindMe, intSelectedOption, , lvwWholeWord)

If itmFound Is Nothing Then
Exit Sub
End If

itmFound.EnsureVisible
itmFound.Selected = True ' Sélectionne l'objet ListItem.
If ListView1.ListItems(longindex).Checked = True Then _
ListView1.ListItems.Remove longindex
ListView1.Refresh
Next T
End If

Merci pour votre aide.

Exploreur

1 réponse

zimzoum Messages postés 3 Date d'inscription samedi 4 janvier 2003 Statut Membre Dernière intervention 10 juillet 2004
10 juil. 2004 à 11:50
ZiM
ZiM

C'est normal que tu supprime tous les enregistrement contenant TOTO, car tu écris :

If itmFound Is Nothing Then
Exit Sub
End If

C'est a dire que tu sors de ton Sub quand pour tous les enregistrements vide , ne contenant pas TOTO.

il faut écrire :

If Not itmFound Is Nothing Then
Exit Sub
End If
0
Rejoignez-nous