Re : Récupérer des informations de fichier (nom, répertoire, date) + boite explorateu
Bonjour
ci-joint code créée par F SIGONNEAU -va voir son site , une mine d'or
Sub TousFichiersDunDossier()
' de F Sigonneau
Dim Fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Dim Sh As Worksheet
Dim EnTetes, ArrFSO
Feuil2.Activate' à adapter
Application.ScreenUpdating = False
Set Fso = CreateObject("Scripting.FileSystemObject")
'adapter le dossier racine si besoin
NomDossier = ChoixDossierFichier("")
If NomDossier = "" Then Exit Sub
Set Dossier = Fso.GetFolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
Set Sh = ActiveSheet 'Sheets.Add
Sh.UsedRange.Clear
EnTetes = Array("Chemin", "Nom", _
"Date création", "Date dernière modification", _
"Date dernier accès", "Taille", "Type", "Attribut(s)")
'mise en forme
With ActiveSheet.Range("A1:H1")
.Value = EnTetes
.Font.Bold = True
.Interior.ColorIndex = 43
.Borders.LineStyle = xlContinuous
.HorizontalAlignment = xlCenter
End With
i = 1
For Each File In Files
i = i + 1
With File
ArrFSO = Array(.ParentFolder & "\", .Name, .DateCreated, _
.DateLastModified, .DateLastAccessed, .Size, .Type)
End With
Sh.Cells(i, 1). _
Resize(1, UBound(ArrFSO) - LBound(ArrFSO) + 1).Value = ArrFSO
Sh.Cells(i, UBound(ArrFSO) + 2).Value = Attributs(File.Attributes)
Next
End If
Sh.UsedRange.EntireColumn.AutoFit
Set Fso = Nothing: Set Sh = Nothing
Set Dossier = Nothing: Set File = Nothing
End Sub
Cordialement
Flyonets