Bonjour,

J'ai cherché un tas de chose, mais je n'arrive pas à réaliser ce que je souhaite.


J'ai deux feuilles : une feuille ("LJ") remplie de détail pas jolie, et une jolie feuille ("Outil").

J'utilise un moteur de recherche par mot clé sur la jolie feuille ("Outil"), c'est à dire qu'en tapant un mot dans ma TextBox21, je vais chercher dans la colonne 11 de la feuille "LJ" ce mot. Je retrouve dans ma ListBox21 le nom (je récupère le contenu de la colonne A en gros) de toutes les lignes où se trouvent se mot.
Jusque là ça marche.



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
Private Sub CommandButton21_Click()
 
If TextBox21 <> "" Then
 
    Call nbLigne
 
    For i = 0 To nb
 
 
 
        If Sheets("LJ").Cells(i, 11) Like "*" & TextBox21 & "*" Then
               ListBox21.AddItem Sheets("LJ").Cells(i, 1)
        End If
    Next
 
End If
 
End Sub
Or maintenant j'aimerais appliquer un filtre à ma feuille ("Outil") pour afficher seulement les lignes associées au résultat de ma ListBox21.

J'ai regardé un tas de chose, mais étant donné que mon nombre de critère pour mon filtre étant variable, je ne sais pas comment m'y prendre. D'autant plus que pour le "Field", je vais chercher mes valeurs dans une autre feuille.

Si vous pouviez m'aider, ça serait fort sympathique.

En vous remerciant

EDIT :

J'avais pensé à utiliser Listbox21.Count pour avoir le nombre d'item de ma liste.
Et après avec une boucle For k = 0 to (Listbox21.Count - 1), ressortir un a un les items de ma liste. Mais je n'y arrive pas :/