Re : UserForm, selection de mots clés via listbox!
Salut à toi...
Ta listbox1 se remplissait parceque ça lui était demandé dans la macro...je te joins la macro et je t'ai mis en gras les lignes en trop...
Private Sub ListBox1_Click()
Sheets("Liste1").Select
Select Case ListBox1.ListIndex
Case 0
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Range("C2").Activate
Do While ActiveCell <> ""
ListBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
choix = Me.ListBox1.ListIndex
Me.ListBox2.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox3.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox4.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox5.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Loop
Case 1
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Range("D2").Activate
Do While ActiveCell <> ""
ListBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
choix = Me.ListBox1.ListIndex
Me.ListBox2.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox3.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox4.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox5.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Loop
Case 2
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Range("E2").Activate
Do While ActiveCell <> ""
ListBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
choix = Me.ListBox1.ListIndex
Me.ListBox2.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox3.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox4.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox5.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Loop
Case 3
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Range("F2").Activate
Do While ActiveCell <> ""
ListBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
choix = Me.ListBox1.ListIndex
Me.ListBox2.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox3.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox4.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox5.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Loop
Case 4
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Range("G2").Activate
Do While ActiveCell <> ""
ListBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
choix = Me.ListBox1.ListIndex
Me.ListBox2.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox3.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox4.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox5.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Loop
Case 5
ListBox2.Clear
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Range("H2").Activate
Do While ActiveCell <> ""
ListBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
choix = Me.ListBox1.ListIndex
Me.ListBox2.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox3.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox4.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Me.ListBox5.List = [choix2].Offset(, choix).Resize(Application.CountA([choix2].Offset(, choix))).Value
Loop
End Select
End Sub
Par la boucle DO...LOOP et de par la ligne en gras cela avait pour effet de remplir ta listbox1 autant de fois qu'il était trouvé d'éléments dans les différentes colonnes de ta feuille: liste1
Bye et à plus...