Remplir plusieurs combobox simultanément
t
bonjour amis EXCElleux!!
aujourd'hui j'essaie avec 2 bouts de code de remplir simultanement les listes des combobox avec les mémes valeurs.
avec le 1er code ci dessous,je remplis des textboxs
Private Sub remplirtextbox()
Dim Ctrl As Variant
N°deligne = UserForm_3.ListView2.SelectedItem
For Each Ctrl In UserForm_3.Controls
If Ctrl.Name Like "TextBox*Désignation" Then Ctrl.Value = Feuil22.Range("b" & N°deligne)
If Ctrl.Name Like "TextBox*N°" Then Ctrl.Value = Feuil22.Cells(N°deligne, "d")
If Ctrl.Name Like "*Réf" Then Ctrl.Value = Feuil22.Range("c" & N°deligne)
If Ctrl.Name Like "*Fournisseur" Then Ctrl.Value = Feuil22.Range("r" & N°deligne)
If Ctrl.Name Like "*Ensemble supérieur" Then Ctrl.Value = Feuil22.Range("q" & N°deligne)
Next Ctrlavec le code cidessous je remplis un combobox:
Set ateliers = CreateObject("Scripting.Dictionary")
With Feuil22
For Each cel In .Range("e2:e" & .[e65000].End(xlUp).Row)
If Not ateliers.Exists(cel.Value) And cel.Value <> "" _
Then ateliers.Add cel.Value, cel.Value
Next cel
End With
Me.Atelier.List = Application.Transpose(ateliers.Items)et si j'essaie de mixer le tout pour pouvoir remplir plusieurs combobox comportant dans leur nom "Désignation";
ca ne marche pas.
Sub remplircbx()
Dim cel As Range
Dim Ctrl As Controls
Dim lesCbxDésignations As Object
N°deligne = UserForm_3.ListView2.SelectedItem
Set lesCbxDésignations = CreateObject("Scripting.Dictionary")
For Each Ctrl In UserForm_3.Controls
If Ctrl.Name Like "ComboBox*Désignation" Then
With Feuil22
For Each cel In Feuil22.Range("b2:b" & Feuil22.[b65000].End(xlUp).Row)
If Not lesCbxDésignations.Exists(cel.Value) And cel.Value <> "" _
Then lesCbxDésignations.Add cel.Value, cel.Value
Next cel
End With
Next Ctrl
Me.ComboBoxCdeDésignation.List = Application.Transpose(lesCbxDésignations.Items)
End SubAvec ce code je devrais au moins en remplir une?
j'ai erreur "next sans for".
Qui peux m'aider?
merci d'avance.
g
Bonjour
En regardant la 3° macro, il me semble qu'il manque une "End if" juste avant "Next Ctrll"
Essaie...
Bye !