OVH Cloud OVH Cloud

Combobox (encore)

1 réponse
Avatar
Linebaker
Bonjour,

J'ai trois combobox. Lorsque je fais un choix dans la ComboBox1, les choix
de la ComboBox2 sont en fonction de la ComboBox1 (se qui élimine des choix),
les choix de la ComboBox3 sont en fonction du choix de la ComboBox1 et
ComboBox2 se qui devrait me laisser entre 1 à 5 possibilités.

Le problème est lorsque je veux faire mon choix dans la Combobox3, j'ai
toutes les possibilités de la colonne de références.

Comment corriger le code pour éviter cela.

Private Sub UserForm_Initialize()
Dim i As Integer
Dim ColBase1 As New Collection
Dim Item As Variant
Dim X As Byte

For X = 1 To 3
Me.Controls("ComboBox" & X).Style = fmStyleDropDownList
Next

With Sheets("Feuil1")
TabPlage = .Range("A2:C" & .Range("A65536").End(xlUp).Row)
End With

On Error Resume Next
For i = 1 To UBound(TabPlage)
ColBase1.Add TabPlage(i, 1), TabPlage(i, 1)
Next
On Error GoTo 0

For Each Item In ColBase1
Me.ComboBox1.AddItem Item
Next

End Sub

Private Sub ComboBox1_Change()
ComboBoxing 2
End Sub

Private Sub ComboBox2_Change()
ComboBoxing 3
End Sub

Merci

1 réponse

Avatar
MPi
Salut,

Je pense qu'il faudrait voir ce qui se passe dans Comboxing 2 et 3 pour
comprendre le problème (?)

Michel

"Linebaker" a écrit dans le message de
news:CuGKe.5102$
Bonjour,

J'ai trois combobox. Lorsque je fais un choix dans la ComboBox1, les choix
de la ComboBox2 sont en fonction de la ComboBox1 (se qui élimine des
choix),

les choix de la ComboBox3 sont en fonction du choix de la ComboBox1 et
ComboBox2 se qui devrait me laisser entre 1 à 5 possibilités.

Le problème est lorsque je veux faire mon choix dans la Combobox3, j'ai
toutes les possibilités de la colonne de références.

Comment corriger le code pour éviter cela.

Private Sub UserForm_Initialize()
Dim i As Integer
Dim ColBase1 As New Collection
Dim Item As Variant
Dim X As Byte

For X = 1 To 3
Me.Controls("ComboBox" & X).Style = fmStyleDropDownList
Next

With Sheets("Feuil1")
TabPlage = .Range("A2:C" & .Range("A65536").End(xlUp).Row)
End With

On Error Resume Next
For i = 1 To UBound(TabPlage)
ColBase1.Add TabPlage(i, 1), TabPlage(i, 1)
Next
On Error GoTo 0

For Each Item In ColBase1
Me.ComboBox1.AddItem Item
Next

End Sub

Private Sub ComboBox1_Change()
ComboBoxing 2
End Sub

Private Sub ComboBox2_Change()
ComboBoxing 3
End Sub

Merci