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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
Private Sub remplissage(ByVal Lst As ComboBox, ByVal Col As Integer, Optional ByVal Crit As String, Optional ColPere As Integer = 1)
Dim LastLig As Long
Dim c As Range
If Crit = "" Then Crit = "*"
With Worksheets("Listes")
LastLig = .Cells(.Rows.Count, 1).End(xlUp).Row
For Each c In .Cells(2, Col).Resize(LastLig - 2)
If c <> "" Then
If CStr(c.Offset(, ColPere - Col).Value) Like Crit Then
Lst.Value = c
If Lst.ListIndex = -1 Then Lst.AddItem c
End If
End If
Next
End With
Lst.ListIndex = -1
End Sub
Private Sub UserForm_Initialize()
Me.StartUpPosition = 2
UserForm4.OptionButton1 = True
Me.liste1.Clear
Me.liste2.Clear
Me.liste3.Clear
Me.liste4.Clear
Me.liste5.Clear
remplissage Me.liste1, 2
remplissage Me.liste2, 4
remplissage Me.liste3, 10
remplissage Me.liste4, 9
remplissage Me.liste5, 11
End Sub
Private Sub liste1_Change()
Me.liste1_2.Clear
If Me.liste1.ListIndex > -1 Then remplissage Me.liste1_2, 3, Me.liste1.Value, 2
Me.liste2.Clear
If Me.liste1.ListIndex > -1 Then remplissage Me.liste2, 4, Me.liste1.Value, 2
End Sub
Private Sub liste2_Change()
Me.liste2_2.Clear
If Me.liste2.ListIndex > -1 Then remplissage Me.liste2_2, 5, Me.liste2.Value, 4
Me.liste2_3.Clear
If Me.liste2.ListIndex > -1 Then remplissage Me.liste2_3, 6, Me.liste2.Value, 4
Me.liste3.Clear
If Me.liste2.ListIndex > -1 Then remplissage Me.liste3, 10, Me.liste2.Value, 4
Me.liste2_4.Clear
If Me.liste2.ListIndex > -1 Then remplissage Me.liste2_4, 7, Me.liste2.Value, 4
Me.liste4.Clear
If Me.liste2.ListIndex > -1 Then remplissage Me.liste4, 9, Me.liste2.Value, 4
Me.liste5.Clear
If Me.liste2.ListIndex > -1 Then remplissage Me.liste5, 11, Me.liste2.Value, 4
End Sub |
Partager