Bonjour à tous,

je galère un peu à faire afficher une liste de documents dépendantes de trois combobox

Afficher dans ListView
ligne i1 si la valeur de la cellule (X1,i1) = combobox1.value ou "ALL"
ligne i2 si la valeur de la cellule (X2,i2) = combobox2.value ou "ALL"
ligne i3 si la valeur de la cellule (X3,i3) = combobox3.value ou "ALL"

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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Private Sub ComboBox1_Change()
 
Dim item As ListItem
Dim derniereligne  As Integer
Dim i As Integer
Dim couleur As Variant
Dim moncritere As Variant
Dim Active As String
Application.ScreenUpdating = False
Active = ActiveSheet.Name
Sheets(Active).Select
 
AffichageSelection.ListItems.Clear
derniereligne = Range("A" & Rows.Count).End(xlUp).Row
 
For i = 12 To derniereligne
 
If ComboBox1.Value = Cells(i, 10).Value Or ComboBox1.Value = "ALL" And ComboBox2.Value = Cells(i, 8).Value Or ComboBox2.Value = "ALL" And ComboBox3.Value = Cells(i, 10).Value Or ComboBox3.Value = "ALL" Then
 
 
        Set item = AffichageSelection.ListItems.Add
 
                item.SubItems(1) = Sheets(Active).Cells(i, 1)
                item.SubItems(2) = Sheets(Active).Cells(i, 3)
                item.SubItems(3) = Sheets(Active).Cells(i, 6)
                item.SubItems(4) = Sheets(Active).Cells(i, 8)
                item.SubItems(5) = Sheets(Active).Cells(i, 10)
                item.SubItems(6) = Sheets(Active).Cells(i, 12)
        End If
 
    Next i
    Application.ScreenUpdating = True
Nbre.Caption = AffichageSelection.ListItems.Count
End Sub
Je pense que je code mal la condition....

Merci à vous tous par avance ...

Une solution serait de passer par un dictionnaire mais je ne sais pas du tout comment l'utiliser...