Combobox
Résolu
nihadlahit
-
NLAH Messages postés 125 Date d'inscription Statut Membre Dernière intervention -
NLAH Messages postés 125 Date d'inscription Statut Membre Dernière intervention -
1 réponse
Bonjour Nihadlahit, bonjour le forum,
Le code ci-dessous imagine que la Combobox se nomme ComboBox1 qu'elle se trouve dans une UserForm. C'est le code d'initialisation de cette UserForm :
La boucle For I =... part de la ligne 2 car on considère que la ligne 1 contient les étiquettes (en-têtes) de la colonne. Si ce n'est pas le cas remplace 2 par 1.
Le code ci-dessous imagine que la Combobox se nomme ComboBox1 qu'elle se trouve dans une UserForm. C'est le code d'initialisation de cette UserForm :
Private Sub UserForm_Initialize() Dim O As Worksheet 'déclare la variable O (Onglet) Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs) Dim D As Object 'déclare la variable D (Dictionnaire) Dim I As Integer 'd;ecalre 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 valeurs 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 du tableau des valeurs TV 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
La boucle For I =... part de la ligne 2 car on considère que la ligne 1 contient les étiquettes (en-têtes) de la colonne. Si ce n'est pas le cas remplace 2 par 1.
NLAH
Messages postés
125
Date d'inscription
Statut
Membre
Dernière intervention
2
merci bcp