Date fichier

Résolu
panorama12 Messages postés 39 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 21 juin 2006 - 21 mars 2006 à 09:52
panorama12 Messages postés 39 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 21 juin 2006 - 22 mars 2006 à 13:20
bonjour.
est- ce que quelqu'un sait comment on peut faire avec vba excel pour compter le nombre de fichiers(.htm) d'un repertoire dont la date de création est comprise dans une certaine fourchette?j'ai ce bout de code mais je n'arrive pas à spécifier les dates de création que je veux dans .lastmodified.

Sub Recherche()
With Application.FileSearch
.NewSearch
.LookIn = "D:\travail afif"
.FileName = "*.htm"
.LastModified=mso msoLastModifiedAnyTime
.SearchSubFolders = True
.Execute
For Ctr = 1 To .FoundFiles.Count
Cells(Ctr, 1) = .FoundFiles(Ctr)
Next
End With
End Sub

4 réponses

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
21 mars 2006 à 21:18
Bonjour,

Exemple avec Fso pour dénombrer les fichiers non modifiés depuis 5 jours.
Il suffit de rajouter une variable pour tester entre 2 dates et éventuellement
subFolder pour les sous-répertoires.
En utilisant WMI c'est aussi possible.

Dim Path
Path = "d:\KRNSDE"


MsgBox ShowFolderList(Path),vbmessage,"Fichiers présents dans le répertoire"
Function ShowFolderList(strPath)
Dim fso, Dossiers, fic, fichiers, strListe, f, fdate, fname, dtDiffFile, nbre_fichier
Set fso = CreateObject("Scripting.FileSystemObject")
Set Dossiers = fso.GetFolder(path)
Set fic = Dossiers.Files


For Each fichiers in fic
Set f = fso.GetFile(fichiers)
fdate = f.DateLastModified
fname = f.Name
dtDiffFile = DateDiff("d", Now, fdate)
If dtDiffFile <= -5 Then
MsgBox "Le fichier " & Path & fname & " sera supprimé car créé le " & fdate
''''' fso.DeleteFile(Path & fname)
nbre_fichier = nbre_fichier + 1
Else
MsgBox "Le fichier " & Path & fname & " ne sera pas supprimé car créé le " & fdate
End If
strListe = strListe & vbcrlf & vbcrlf & fname & " " & fdate
Next
ShowFolderList = "Nombre de fichiers: " nbre_fichier &vbCrLf& strListe
End Function

Comme Julien, je répond aux éventuelles questions.

jean-marc
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
21 mars 2006 à 10:47
Salut,

As tu essayer avec le FileSyStemObject ?

Tu pourras grace a ceci utilise l'objet File qui possede les Propriete :

DateCreated
DateLastAccessed
DateLastModified

Tu pourras aussi utiliser l'objet Folder qui represente tout un repertoire avec ses collection Files et SubFolders..

Voila en esperant avoir pu t'aider un peu.

Si tu veux plus d'aide sur le FileSystemObjet no problem.

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
21 mars 2006 à 21:19
Bonsoir,

ShowFolderList = "Nombre de fichiers: " & nbre_fichier &vbCrLf& strListe
0
panorama12 Messages postés 39 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 21 juin 2006
22 mars 2006 à 13:20
salut.
en fait j'ai utilisé filedatetime ca marche aussi bien.
merci
0
Rejoignez-nous