| 12
 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
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 
 |  
Application.ScreenUpdating = False
'********************************************************
'     Recherche des fichiers disponibles suppression des plus vieux que 8 jours 
'     et chargement du plus récent.
'********************************************************
    Dim Fichier As String, Chemin As String
    Dim Tableau()
    Dim m As Integer, i As Integer
    Dim z As Byte, Valeur As Byte
    Dim Datelimite As Date
    Dim Datecrefich As Date
 
'---liste les fichiers du répertoire ---
    Chemin = "MonRépertoire"
    Fichier = Dir(Chemin & "*.*")
    'pour filtrer sur un type de fichiers (par exemple xls)
    'Fichier = Dir(Chemin & "\*.xls")
 
    'Boucle sur les fichiers
    Do
 
        m = m + 1
        ReDim Preserve Tableau(1 To 2, 1 To m)
        Tableau(1, m) = Fichier
 
       Set Fso = CreateObject("Scripting.FileSystemObject")
       Set FileItem = Fso.GetFile(Chemin & "\" & Fichier)
 
        'Récupère la date de création
        Tableau(2, m) = Left(FileItem.DateCreated, 10)
' ici je fixe ma durée d'archive que je souhaite garder (ici 8 jours).
        Datelimite = Date - 8
        Datecrefich = Left(FileItem.DateCreated, 10)
' si le fichier est plus vieux, je le supprime
        If Datelimite > Datecrefich Then
        Kill FileItem
        End If
         Fichier = Dir
    Loop Until Fichier = ""
 
 
    '---Trie les fichiers par ordre décroissant de création ---
    Do
        Valeur = 0
        For i = 1 To m - 1
            If CDate(Tableau(2, i)) < CDate(Tableau(2, i + 1)) Then
                For z = 1 To 2
                    Cible = Tableau(z, i)
                    Tableau(z, i) = Tableau(z, i + 1)
                    Tableau(z, i + 1) = Cible
                Next z
 
                Valeur = 1
            End If
        Next i
    Loop While Valeur = 1
 
 MonFichierA_Ouvrir = chemin &Tableau(1, 1) | 
Partager