Pas de doublons dans une combobox alimenté par la liste de fichiers d'un repertoire

  • Initiateur de la discussion Initiateur de la discussion Carnage029
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Carnage029

XLDnaute Occasionnel
Bonjour à tous, je me permet de solliciter votre aide,

J'ai alimenté une combobox avec le code suivant :

Code:
    Dim MonRepertoire, fa, fe, x As Integer
    Set fso = CreateObject("Scripting.FileSystemObject")
    chem = "C:\mondossier\"
    MonRepertoire = chem & UserForm1.siglecombobox.Text
    x = 1
    For Each fa In fso.GetFolder(MonRepertoire).Files
        lsigle = Len(UserForm1.siglecombobox.Text)
        fe = fa.Name
        fe = Mid(fe, lsigle + 2, 3)
        UserForm1.devisecombobox.AddItem fe
        x = x + 1
    Next fa

mais je n'arrive pas à faire apparaitre dans la combobox que les uniques (sans doublons, voir plus)

J'ai vu des méthodes pour enlever les doublons, mais avec des listes sur des feuilles...

Merci de votre aide
 
Re : Pas de doublons dans une combobox alimenté par la liste de fichiers d'un reperto

Bonjour Carnage,

Les dictionnaires (Scripting.Dictionary) permettent de supprimer les doublons

un exemple à l'aveugle, je n'ai pas testé

Code:
    Dim MonRepertoire, fa, fe, x As Integer, Dico, Tablo
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Dico = CreateObject("Scripting.Dictionary")
    chem = "C:\mondossier\"
    MonRepertoire = chem & UserForm1.siglecombobox.Text
    x = 1
    For Each fa In fso.GetFolder(MonRepertoire).Files
        lsigle = Len(UserForm1.siglecombobox.Text)
        fe = fa.Name
        fe = Mid(fe, lsigle + 2, 3)
        Dico(fe) = fe
        x = x + 1
    Next fa
    Tablo = Dico.keys
    Set Dico = Nothing
    Set fso = Nothing
    For x = LBound(Tablo) To UBound(Tablo)
        UserForm1.devisecombobox.AddItem Tablo(x)
    Next x
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour