[VBA Excel] Liste les dossier d'un répertoire
Résolu
ben13.51
Messages postés
115
Statut
Membre
-
Polux31 Messages postés 7219 Statut Membre -
Polux31 Messages postés 7219 Statut Membre -
Bonjour,
je souhaite établir dans une feuille Excel la liste des dossiers d'un répertoire dont je précise l'adresse dans une Input Box...
N'étant pas très familier avec l'utilisation des Objets sous VBA quelqu'un peut-il m'aiguiller sur la façon de procéder pour arriver à mes fins...
Merci d'avance
Cordialement
Ben
je souhaite établir dans une feuille Excel la liste des dossiers d'un répertoire dont je précise l'adresse dans une Input Box...
N'étant pas très familier avec l'utilisation des Objets sous VBA quelqu'un peut-il m'aiguiller sur la façon de procéder pour arriver à mes fins...
Merci d'avance
Cordialement
Ben
2 réponses
-
Bonjour,
Option Explicit Private oCollec As Collection Public Sub Macro1() Dim chemin As String chemin = InputBox("Entrez le chemin du répertoire", "Répertoire") Set oCollec = New Collection SearchAllFilesInFolders (chemin) AfficheListe Set oCollec = Nothing End Sub Private Sub SearchAllFilesInFolders(ByVal chemin As String) Dim fso As FileSystemObject Dim dossier As Folder Set fso = New FileSystemObject Set dossier = fso.GetFolder(chemin) Call scanFolder(dossier) End Sub Private Sub scanFolder(ByVal dossier As Folder) Dim sousdossier As Folder Dim fichier As File For Each fichier In dossier.Files oCollec.Add fichier Next For Each sousdossier In dossier.SubFolders Call scanFolder(sousdossier) Next End Sub Private Sub AfficheListe() Dim i As Long Dim lig As Long Dim ws As Worksheet Set ws = ThisWorkbook.Worksheets(1) lig = 2 With ws For i = 1 To oCollec.Count .Range("A" & lig).Value = oCollec(i) lig = lig + 1 Next i End With End Sub
;o)
«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau-
Merci beaucoup pour votre réponse, je pense que je touche au but.
Cependant lors du premier essai j'ai un message d'erreur au niveau de la Private Sub ScanFolder.
Il semble que le Type de variable "as Folder" ne soit pas reconnu car j'ai le message suivant :
Erreur de compilation : Type défini par l'utilisateur non défini.
Que dois-je faire pour corriger ce problème...
Encore merci pour votre aide
Cordialement
Ben -
-
-
-
-