Liste de fichiers d'un dossier et ses sous dossiers
Nuage75
Messages postés
22
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je dispose d'un code me permettant de lister l'ensemble des fichiers contenus dans un dossier et ses sous dossiers. Cependant, je rencontre quelques difficultés pour le finaliser et obtenir ce que je veux.
J'aimerais que le chemin "D:\Mes Documents\ECOTEC 3eme ANNEE\VBA FM\" ne soit pas rentré dans le code mais dans la cellule C2 de la feuil et que le code, prenne cette cellule comme référence.
Cette macro liste l'ensemble des fichiers alors que je voudrais uniquement les fichiers .xls
Est-ce possible ? Pouvez-vous m'aider svp ?
Je dispose d'un code me permettant de lister l'ensemble des fichiers contenus dans un dossier et ses sous dossiers. Cependant, je rencontre quelques difficultés pour le finaliser et obtenir ce que je veux.
Sub list()
Range("A7:C65536").Clear
Range("A7").Select
ListFilesInFolder "D:\Mes Documents\ECOTEC 3eme ANNEE\VBA FM\", True
End Sub
Sub ListFilesInFolder(SourceFolderName As String, IncludeSubfolders As Boolean)
'auteur: scubajon
' lists information about the files in SourceFolder
' example: ListFilesInFolder "C:\FolderName\", True
Dim FSO
Dim SourceFolder
Dim SubFolder
Dim FileItem
Dim r As Long
Set FSO = CreateObject("Scripting.FileSystemObject")
Set SourceFolder = FSO.GetFolder(SourceFolderName)
r = Range("A65536").End(xlUp).Row + 1
For Each FileItem In SourceFolder.Files
' display file properties
Cells(r, 1).Formula = FileItem.Name
Cells(r, 2).Formula = FileItem.Path
Cells(r, 3).Formula = FileItem.DateCreated
Cells(r, 4).Formula = FileItem.DateLastModified
r = r + 1 ' next row number
Next FileItem
If IncludeSubfolders Then
For Each SubFolder In SourceFolder.SubFolders
ListFilesInFolder SubFolder.Path, True
Next SubFolder
End If
Columns("A:G").ColumnWidth = 17
Columns("H:I").AutoFit
Columns("J:L").ColumnWidth = 17
Columns("M:P").ColumnWidth = 17
Set FileItem = Nothing
Set SourceFolder = Nothing
Set FSO = Nothing
ActiveWorkbook.Saved = True
End Sub
J'aimerais que le chemin "D:\Mes Documents\ECOTEC 3eme ANNEE\VBA FM\" ne soit pas rentré dans le code mais dans la cellule C2 de la feuil et que le code, prenne cette cellule comme référence.
Cette macro liste l'ensemble des fichiers alors que je voudrais uniquement les fichiers .xls
Est-ce possible ? Pouvez-vous m'aider svp ?
A voir également:
- Vba lister les fichiers d'un dossier et sous dossier
- Dossier appdata - Guide
- Impossible de supprimer un dossier - Guide
- Mettre un mot de passe sur un dossier - Guide
- Dossier rar - Guide
- Dossier démarrage - Guide
1 réponse
bonjour
pour chercher et inscrire un dossier en C2
pour chercher et inscrire un dossier en C2
Function recherchedossier()
Dim ObjShell As Object, ObjFolder As Object
Dim Message As String
Dim Chemin As String
Message = "Faire la Sélection du dossier"
Set ObjShell = CreateObject("Shell.Application")
Set ObjFolder = ObjShell.BrowseForFolder(&H0&, Message, 1)
On Error Resume Next 'Si on sort sans sélection
Chemin = ObjFolder.ParentFolder.ParseName(ObjFolder.Title).Path & ""
If Chemin = "" Then End
recherchedossier = Chemin
End Function