Combobox

Résolu
nihadlahit -  
NLAH Messages postés 135 Statut Membre -
Bonjour,

j'aimerai savoir comment creer une liste déroulante à partir des valeurs presentes dans la colonne A de telle sorte que:

la liste deroulante ne peut pas contenir des doublons.

Merci

1 réponse

  1. ThauTheme Messages postés 1564 Statut Membre 160
     
    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 :

    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.
    0
    1. NLAH Messages postés 135 Statut Membre 2
       
      merci bcp
      0