Listbox - Dossiers & sous dossiers

Bonjour à tous,

Je souhaiterais afficher dans une listbox tous les fichiers xlsm se trouvant dans un dossier ainsi que dans les sous dossiers. le but est de pouvoir selectionner le fichier à importer.

Private Sub ListBox1_Click()

End Sub

Private Sub UserForm_Initialize()

Dim repertoire As String, fichier As String

repertoire = "U:\"

fichier = Dir(repertoire & "*.xls")

Do While fichier <> ""

ListBox1.AddItem fichier

fichier = Dir

Loop

End Sub

Avec ce code, je vois uniquement les fichiers xls qui se trouvent dans le répertoire U. je voudrais également voir apparaitre les fichiers xls se trouvant dans les sous dossiers et les sous sous dossiers du répertoire U. A noter que les sous dossiers ont des noms variables

Comment faudrait il adapter le code ?

Merci d'avance pour votre aide

cdt,

Bonsoir

A tester

Bonsoir,

Bonsoir BANZAI,

une proposition

Sub listfolder(folder, ByRef a, ByRef n)

    Set fold = CreateObject("Scripting.FileSystemObject").GetFolder(folder)
    For Each f In fold.SubFolders
        If Right(f, 1) <> "\" Then listfolder f & "\", a, n Else listfolder f, a, n
    Next
    For Each f In fold.Files
        If Right(f, 4) = ".xls" Then
            n = n + 1
            a(n) = folder & f.Name
        End If
    Next
End Sub
Private Sub UserForm_Initialize()
    Dim a(10000)
    listfolder "U:\", a, n
    For i = 1 To n
        ListBox1.AddItem a(i)
    Next i
End Sub
Rechercher des sujets similaires à "listbox dossiers"