Sub DernierFichier()
Dim Tbl() As String
Dim Chemin As String
Dim DateMax As Date
Dim Fichier As String
Dim I As Integer
Chemin = "D:\"
Tbl() = ListeFichiers(Chemin, ".txt")
For I = 1 To UBound(Tbl)
If DateMax < ProprietesFichier(Chemin & Tbl(I)) Then
DateMax = ProprietesFichier(Chemin & Tbl(I))
Fichier = Tbl(I)
End If
Next I
MsgBox Fichier & vbCrLf & DateMax
End Sub
Function ProprietesFichier(Chemin As String) As String
Dim Fso As Object
Dim Doc As Object
If Dir(Chemin) <> "" Then
Set Fso = CreateObject("Scripting.FileSystemObject")
Set Doc = Fso.GetFile(Chemin)
With Doc
ProprietesFichier = .DateLastModified
End With
Else
ProprietesFichier = "Fichier introuvable"
End If
Set Doc = Nothing
Set Fso = Nothing
End Function
Function ListeFichiers(Chemin As String, _
Extension As String) As String()
Dim Tbl() As String
Dim Fichier As String
Dim I As Integer
Fichier = Dir(Chemin & "*" & Extension)
Do While (Len(Fichier) > 0)
If InStr(Fichier, Extension) <> 0 Then
I = I + 1
ReDim Preserve Tbl(1 To I)
Tbl(I) = Fichier
End If
Fichier = Dir()
Loop
ListeFichiers = Tbl()
End Function