J'ai deux combobox liées
FZOLK
Messages postés
1
Statut
Membre
-
ThauTheme Messages postés 1564 Statut Membre -
ThauTheme Messages postés 1564 Statut Membre -
Bonjour tt le monde,
ça fait des jours que j'essaie de faire une petite appli;
En fait j'ai deux combobox, la première me permet de choisir un article de la colonne A. EN fonction de ce choix je voudrais que ma seconde combobox m'affiche l'information de la colonne B qui correspond à cet article ( sachant que le même article de répète dans mon tableau);
Merci par avance
ça fait des jours que j'essaie de faire une petite appli;
En fait j'ai deux combobox, la première me permet de choisir un article de la colonne A. EN fonction de ce choix je voudrais que ma seconde combobox m'affiche l'information de la colonne B qui correspond à cet article ( sachant que le même article de répète dans mon tableau);
Merci par avance
A voir également:
- J'ai deux combobox liées
- Deux ecran pc - Guide
- Comment faire deux colonnes sur word - Guide
- Nombre de jours entre deux dates excel - Guide
- Deux whatsapp sur un téléphone - Guide
- Connecter deux airpods mac - Guide
1 réponse
Bonjour Fzolk, bonjour le forum,
Si tes données sont placées comme ci-dessous :
Colonne A / Colonne B
Articles / Info_Article
Article1 / info 1.1
Article1 / info 1.2
Article1 / info 1.3
Article1 / info 1.4
Article1 / info 1.5
Article1 / info 1.6
Article1 / info 1.7
Article2 / info2.1
Article2 / info2.2
Article2 / info2.3
Article2 / info2.4
Article2 / info2.5
Article 3 / info 3.1
Article 3 / info 3.2
Article 3 / info 3.3
Article 3 / info 3.4
Article 4 / info4.1
Article 4 / info4.2
Article 4 / info4.3
Article 4 / info4.4
Article 5 / info5.1
Article 5 / info5.2
Article 5 / info5.3
Article 5 / info5.4
Article 5 / info5.5
Article 5 / info5.6
Article 5 / info5.7
Le code qui suit devrait convenir :
Si tes données sont placées comme ci-dessous :
Colonne A / Colonne B
Articles / Info_Article
Article1 / info 1.1
Article1 / info 1.2
Article1 / info 1.3
Article1 / info 1.4
Article1 / info 1.5
Article1 / info 1.6
Article1 / info 1.7
Article2 / info2.1
Article2 / info2.2
Article2 / info2.3
Article2 / info2.4
Article2 / info2.5
Article 3 / info 3.1
Article 3 / info 3.2
Article 3 / info 3.3
Article 3 / info 3.4
Article 4 / info4.1
Article 4 / info4.2
Article 4 / info4.3
Article 4 / info4.4
Article 5 / info5.1
Article 5 / info5.2
Article 5 / info5.3
Article 5 / info5.4
Article 5 / info5.5
Article 5 / info5.6
Article 5 / info5.7
Le code qui suit devrait convenir :
Private O As Worksheet 'déclare la variable O (onglet)
Private TV As Variant 'déclare la variable TV (Tableau des Valeurs)
Private Sub UserForm_Initialize() 'à l'initialisation de l'userForm
Dim D As Object 'déclare la variable D (Dictionnaire)
Dim I As Integer 'déclare la variable I (Incrément)
Set O = Worksheets("Feuil1") 'définit l'onglet O (à adapter à ton cas)
TV = O.Range("A1").CurrentRegion 'définit le tableau des valeur TV
Set D = CreateObject("Scripting.Dictionary") 'définit le dictionnaire D
For I = 2 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valeurs TV (en partant de la seconde)
D(TV(I, 1)) = "" 'alimente le dictionnaire D avec les données en colonne 1 (les Articles)
Next I 'prochaine ligne de la boucle
Me.ComboBox1.List = D.Keys 'alimente la ComboBox1 avec la liste des éléments du dictionnaire D sans doublon
End Sub
Private Sub ComboBox1_Change() 'au changement dans la ComboBox1
Dim I As Integer 'déclare la variable I (Incrément)
Me.ComboBox2.Clear 'vide la ComboBox2
If Me.ComboBox1.Value = "" Then Exit Sub 'si la ComboBox1 est effacée, sort de la procédure
For I = 2 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valeurs TV (en partant de la seconde)
'si la donnée en colonne 1 de TV est églale à la valeur de la ComboBox1, ajoute la donnée en colonne 2 de TV dans la ComboBox2
If TV(I, 1) = Me.ComboBox1 Then Me.ComboBox2.AddItem TV(I, 2)
Next I 'prochaine ligne de la boucle
End Sub