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
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.