[vbscript] liste des fichiers, d'un répertoire, triés par date de modification (du + récent au + ancien)

Contenu du snippet

Ce script (VBS) a pour but d'afficher, dans une MsgBox, la liste des fichiers
d'un répertoire, triée par date de modification (du + récent au + ancien)

Translation de VB6 en VBS du code (réponse) proposé par "michelxld" (forum VBFrance)
http://www.vbfrance.com/infomsg/OUVERTURE-FICHIER-RECENT-2_720974.aspx (le 22/04/2006 06:19:25)
Un grand MERCI à "rvblog" sans lequel ce script (version VBS) ne serait pas fonctionnel !!!"

jean-marc

Source / Exemple :


Option Explicit

Const PathMDB   = "D:\Mes_scripts_VBFrance" 

MsgBox TriRepertoire,,"Enumération " & PathMDB
'---lister les fichiers du répertoire ---
Function TriRepertoire()
Dim fso, fichier, fileItem
Dim i, imax, z, valeur, cible, liste
Set fso = CreateObject("Scripting.FileSystemObject")

imax = 0
'début de l'énumération
For Each fichier In fso.GetFolder(PathMDB).Files
    Set fileItem = fso.GetFile(fichier)
    
    imax = imax + 1
    ReDim Preserve Tableau(2, imax)
    Tableau(1, imax) = Fichier.Name
    Tableau(2, imax) = FileItem.DateLastModified

    '---trier les fichiers par ordre décroissant de création ---
    Do
    Valeur = 0
    For i = 1 To imax - 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
       Valeur = 1
    End If
    Next 
    Loop While Valeur = 1
    Set fileItem = nothing
Next

'Affichage du résultat classé
For i = 1 To imax
    liste = liste &vbTab& i &vbTab& Tableau(1, i) &Space(2)&vbTab&vbTab& Tableau(2, i) &vbCr
    'MsgBox liste,,i & " / " & imax &Space(3)& "Liste du répertoire"&Space(3)& PathMDB 
    If i = imax Then MsgBox  liste ,,"Liste du répertoire" &Space(3)& PathMDB 
Next
TriRepertoire = liste

Set fso = nothing 
End Function

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.