Recherche dans listbox [Userform]

Maxoverfred

XLDnaute Occasionnel
Je fais une recherche d'un string dans un listbox
-----------
Dim sCrit As String

sCrit = '*' & UCase(Me.txtfind.Text) & '*'
With Me.ListBox1
For i = .ListCount - 1 To 0 Step -1
If Not UCase(.List(i)) Like sCrit Then
.RemoveItem i
End If
Next i
End With
---------------

Tout marche très bien sauf que j'aimerais qu'il recherche dans les deux colonnes de mon list box et pas seulement dans une seule

Pouvez vous m'aider?

Merci
 

Hervé

XLDnaute Barbatruc
Bonjour

:)

L'index d'un élément d'une listbox se retrouve par .list(ligne, colonne)

Il te faut donc boucler sur les deux colonnes.

sans avoir fait de test (pas le temps de créer tout le bastringue) :

If Not UCase(.List(i, 0)) Like sCrit Or UCase(.List(i, 1)) Like sCrit Then

essaye un truc dans ce principe.

Sinon, joint un fichier.

Salut
 

Maxoverfred

XLDnaute Occasionnel
Merci à toi, cela marche très bien
je mets le code au cas où cela intéresserait quelqu'un

Dim i As Long
Dim sCrit As String

sCrit = '*' & UCase(Me.txtfind.Text) & '*'
With Me.ListBox1
For i = .ListCount - 1 To 0 Step -1
If Not UCase(.List(i, 0)) Like sCrit Then
If Not UCase(.List(i, 1)) Like sCrit Then
.RemoveItem i
End If
End If
Next i
End With
 

Discussions similaires

Réponses
4
Affichages
242