Bonjour @ tous,
après avoir réussi à alimenter ma listbox en fonction d'un critère j'aimerais supprimer les entrées lièes au 1er critère si il ne répondent pas au 2ème critère.
Si cela parait simple avec des références fixes mon probleme est que mes colonnes varient en fonction du choix du critere donc exit .offset(,)
J'essaye finalement de comparer le row car pour chaucune des feuilles les références des colonnes 1 et 2 sont les memes (nom et prénom).
Private Sub ComboBox2_Change()
Dim i, x, m As Variant
Dim cel As Range
sht1 = Me.ComboBox2.List(Me.ComboBox2.ListIndex, 2)
Col1 = Me.ComboBox2.List(Me.ComboBox2.ListIndex, 1)
Me.ListBox1.Clear
x = 0
For i = 2 To Dlig
If Sheets(sht1).Cells(i, Col1) = Me.ComboBox2.Value Then
With Me.ListBox1
.AddItem Sht.Cells(i, 1)
.List(x, 1) = Sht.Cells(i, 2)
.List(x, 2) = Sht.Cells(i, 3)
End With
x = x + 1
End If
Next i
If Me.ComboBox3.Value <> "" Then
For i = 2 To Dlig
sht2 = Me.ComboBox3.List(Me.ComboBox3.ListIndex, 2)
Col2 = Me.ComboBox3.List(Me.ComboBox3.ListIndex, 1)
For x = Me.ListBox1.ListCount - 1 To 0 Step -1 If Sheets(sht2).Cells(i, 1).Find(Me.ListBox1.List(x), , xlValues, xlWhole).Row _
<> Sheets(sht2).Cells(i, Col2).Row Then Me.ListBox1.RemoveItem (x)
Next x
Next i
End If
End Sub
sht 1 et 2 correspond à la feuille du critère 1 et du critère 2
col 1 et 2 colonne du critère 1 et du critère 2
SI la première partie fonctionne c'est la partie ne rouge qui me pose probleme.
je vous mets la pièce jointe complete pour une meilleur compréhension si besoin.
Merci
après avoir réussi à alimenter ma listbox en fonction d'un critère j'aimerais supprimer les entrées lièes au 1er critère si il ne répondent pas au 2ème critère.
Si cela parait simple avec des références fixes mon probleme est que mes colonnes varient en fonction du choix du critere donc exit .offset(,)
J'essaye finalement de comparer le row car pour chaucune des feuilles les références des colonnes 1 et 2 sont les memes (nom et prénom).
Private Sub ComboBox2_Change()
Dim i, x, m As Variant
Dim cel As Range
sht1 = Me.ComboBox2.List(Me.ComboBox2.ListIndex, 2)
Col1 = Me.ComboBox2.List(Me.ComboBox2.ListIndex, 1)
Me.ListBox1.Clear
x = 0
For i = 2 To Dlig
If Sheets(sht1).Cells(i, Col1) = Me.ComboBox2.Value Then
With Me.ListBox1
.AddItem Sht.Cells(i, 1)
.List(x, 1) = Sht.Cells(i, 2)
.List(x, 2) = Sht.Cells(i, 3)
End With
x = x + 1
End If
Next i
If Me.ComboBox3.Value <> "" Then
For i = 2 To Dlig
sht2 = Me.ComboBox3.List(Me.ComboBox3.ListIndex, 2)
Col2 = Me.ComboBox3.List(Me.ComboBox3.ListIndex, 1)
For x = Me.ListBox1.ListCount - 1 To 0 Step -1 If Sheets(sht2).Cells(i, 1).Find(Me.ListBox1.List(x), , xlValues, xlWhole).Row _
<> Sheets(sht2).Cells(i, Col2).Row Then Me.ListBox1.RemoveItem (x)
Next x
Next i
End If
End Sub
sht 1 et 2 correspond à la feuille du critère 1 et du critère 2
col 1 et 2 colonne du critère 1 et du critère 2
SI la première partie fonctionne c'est la partie ne rouge qui me pose probleme.
je vous mets la pièce jointe complete pour une meilleur compréhension si besoin.
Merci