Supprimer des fichiers

Résolu
spike13127 Messages postés 15 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 2 décembre 2006 - 7 juil. 2006 à 12:21
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 - 9 juil. 2006 à 20:59
Voilà je travail sur excel, j'enregistre souvent des fichiers. Je voudrais que les fichiers que j'ai enregistrer il y a plus d'un ans soit supprimer automatiquement ou après avoir cliqué sur un bouton. Les fichiers sont enregistrer avec comme nom une serie de caractère alphanumérique et extention .xls. Merci de votre aide

2 réponses

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
9 juil. 2006 à 20:59
 Bonsoir,

Avec une petite recherche, script à adapter:

Dim Path
Path  = "d:\test1"


MsgBox ShowFolderList(Path),vbmessage,"Fichiers supprimés du 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)
    If fso.GetExtensionName(fichiers) = "xls" Then
       fdate = f.DateLastModified  ' ou DateCreated
       fname = f.Name
       dtDiffFile = DateDiff("d", Now, fdate)
       If dtDiffFile <= -365 Then
'         MsgBox  "Le fichier " & Path & fname & " sera supprimé car créé le " & fdate
          strListe = strListe & vbcrlf & vbcrlf & fname & " " & fdate
'         fso.DeleteFile(Path & fname)
          Else
'         MsgBox "Le fichier " & Path & fname & " ne sera pas supprimé car créé le " & fdate
       End If
   End If
Next
ShowFolderList = "Fichiers supprimés car .xls" &vbCrLf&"et"&vbCrLf&"Date de création > 365 jours"&vbCrLf&vbCrLf& strListe
End Function

jean-marc
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
7 juil. 2006 à 16:59
Salut
Comme toujours, il faut décomposer ce qu'on veut faire :
- Rechercher la liste des fichiers à tester
- Pour chaque fichier :
   - Rechercher la date de chacun des fichiers
   - Comparer cette date à la date actuelle
   - Supprimer le fichier si nécessaire

Si la date du fichier est contenue dans son nom, un simple DIR + KILL devrait suffire
S'il faut demander la date du fichier au système, il faut d'abord faire un DIR pour pointer un fichier, demander la date du fichier (avec les APIs), comparer et KILL si nécessaire

Le site n'a pas vocation de fournir des applications toutes faites.
Alors renseigne toi (au travers des sources et du forum) sur chacun de ces Items, et si besoin, pose des questions plus précises sur cet Item, tu n'auras plus qu'à recomposer le puzzle.
Toutes les réponses sont sur le site.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
0
Rejoignez-nous