1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| Option Explicit
Public Sub Liste_répertoire()
Dim rep As String
Dim srp As String
Dim lig As Long
Dim obj As Object
Dim dos As Object
Dim fic As Object
rep = [dossier].Value
Set obj = CreateObject("Scripting.FileSystemObject")
With ActiveSheet
.Cells(4, 1).Resize(.UsedRange.Rows.Count, .UsedRange.Columns.Count).ClearContents
On Error Resume Next
srp = Dir(rep, vbDirectory)
If srp = "" Then MsgBox "Dossier inexistant": Exit Sub
On Error GoTo 0
lig = 4
While srp <> ""
If srp <> "." And srp <> ".." Then
If (GetAttr(rep & srp) And vbDirectory) = vbDirectory Then
.Cells(lig, 1) = srp
Set dos = obj.getfolder(rep & srp)
For Each fic In dos.Files
.Cells(lig, 1) = srp
.Cells(lig, 2) = fic.Name
.Cells(lig, 3).FormulaR1C1 = "=HYPERLINK(dossier&RC[-2]&""\""&RC[-1],""lien"")"
.Cells(lig, 4) = fic.datecreated
.Cells(lig, 5) = fic.Size
.Cells(lig, 6) = fic.DatelastModified
lig = lig + 1
Next fic
End If
End If
srp = Dir
Wend
.Cells(3, 1).Resize(.UsedRange.Rows.Count, .UsedRange.Columns.Count).Columns.AutoFit
End With
End Sub |
Partager