ComboBox lier à une ComboBox
Bonjour,
Je me permet de vous écrire car j'ai un problème entre deux combobox ( problème entre "" )
Voilà j'ai fait en sorte que soit remplie mes deux comboBox.
Comme mon code à plusieurs dizaine de page de mon fichier réel j'ai simplifier au maximum celui partager ( 4 lignes environs)
Voilà ma recherche ( après plusieurs recherche sur le forum, google ... ) :
Je souhaiterais que lorsque je choisie une valeur dans la combobox1 la valeur de la combobox2 soit automatique
et vice versa que lorsque je choisie la valeur de la combobox2 la combobox1 soit aussi automatique.
Mais une contrainte de plus apparait je voudrais pas que mes utilisateurs puisse modifier les valeurs dans les comboboxs ( leur interdire d'écrire leur propre valeur
Voilà je pense avoir bien décrit mon problème et je met en PJ mon fichier très simplifier .
J'ai finalement trouver ma solution :
Private Sub ComboBox1_DropButtonClick()
ComboBox2.ListIndex = ComboBox1.ListIndex
End Sub
Private Sub ComboBox2_DropButtonClick()
ComboBox1.ListIndex = ComboBox2.ListIndex
End Sub
mais il me reste juste la contrainte d'interdire à mes utilisateurs de modifier les noms
Bonjour Antho, bonjour le forum,
Essaie comme ça :
Private Sub UserForm_Initialize()
Dim O As Worksheet
Dim DL As Integer
Set O = Sheets("Feuil1")
DL = O.Cells(Application.Rows.Count, 1).End(xlUp).Row
With ComboBox1
.List = O.Range("A2:A" & DL).Value
.Style = fmStyleDropDownList
End With
With ComboBox2
.List = O.Range("B2:B" & DL).Value
.Style = fmStyleDropDownList
End With
End Sub
Private Sub ComboBox1_Change()
Me.ComboBox2.ListIndex = Me.ComboBox1.ListIndex
End Sub
Private Sub ComboBox2_Change()
Me.ComboBox1.ListIndex = Me.ComboBox2.ListIndex
End Sub
ThauThème a écrit :Bonjour Antho, bonjour le forum,
Essaie comme ça :
Private Sub UserForm_Initialize() Dim O As Worksheet Dim DL As Integer Set O = Sheets("Feuil1") DL = O.Cells(Application.Rows.Count, 1).End(xlUp).Row With ComboBox1 .List = O.Range("A2:A" & DL).Value .Style = fmStyleDropDownList End With With ComboBox2 .List = O.Range("B2:B" & DL).Value .Style = fmStyleDropDownList End With End Sub Private Sub ComboBox1_Change() Me.ComboBox2.ListIndex = Me.ComboBox1.ListIndex End Sub Private Sub ComboBox2_Change() Me.ComboBox1.ListIndex = Me.ComboBox2.ListIndex End Sub
C'est génial encore mieux comme solution
Merci beaucoup pour la réponse très rapide