Bonjour,
Voici un exemple,
Sub ListingFiles()
Dim Rep As String, Fichier As String
Dim i As Integer
Dim fd As Office.FileDialog
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
fd.Title = "Sélectionnez un dossier..."
If fd.Show() Then d = fd.SelectedItems(1) & "\"
Rep = d
Fichier = Dir(Rep)
Do While Fichier <> ""
i = i + 1
Sheets("Feuil1").Range("A" & i) = Fichier
Fichier = Dir
Loop
End Sub
autre exemple utilisant Scripting.FileSystemObject
Sub Liste_fichiers_deDossier_et_deSousDossier()
'Nécessite d'activer la référence "Microsoft Scripting RunTime"
Dim Dossier As String
Dossier = "C:\Users\isabelle\Documents\" 'à adapter
ListeFichiers Dossier
End Sub
Sub ListeFichiers(Repertoire As String)
'Nécessite d'activer la référence "Microsoft Scripting RunTime"
Dim Fso As Scripting.FileSystemObject
Dim SourceFolder As Scripting.Folder
Dim SubFolder As Scripting.Folder
Dim FileItem As Scripting.File
Dim i As Long
Set Fso = CreateObject("Scripting.FileSystemObject")
Set SourceFolder = Fso.GetFolder(Repertoire)
i = Cells(Rows.Count, 1).End(xlUp).Row + 1
For Each FileItem In SourceFolder.Files
Cells(i, 1) = FileItem.ParentFolder
Cells(i, 2) = FileItem.Name
Cells(i, 3) = FileItem.DateCreated
Cells(i, 4) = FileItem.DateLastAccessed
Cells(i, 5) = FileItem.DateLastModified
i = i + 1
Next FileItem
For Each SubFolder In SourceFolder.SubFolders
ListeFichiers SubFolder.Path
Next SubFolder
End Sub