Supprimer un fichier ancien

Bonjour,

Je voudrais supprimer des fichiers qui ont plus de 8 jours (la date et le nom du fichier
J'arrive pas a comparer les 2 dates j'ai un message erreru d'execution "13 incompatibilité de type

test = (Format(Now, "yyyy.mm.dd"))

If CDate(variable1) < (test - 8) Then

Kill Chemin & Fichier & ".xls"

end if

la variable1 me retourne 2021.11.17 et test 2021.11.17

merci

Bonjour

Format(now.... te met le texte en texte et non en date...

If CDate(variable1) < (now - 8) Then....

devrait suffire

A+ François

Merci pour votre réponse mais j'ai l'impression qu'il arrive pas a comparer les 2 variable (variable1 et Now) pour pouvoir supprimer les fichier ancien de plus de 8 jours du dossier. Les fichier du dossier son du type Test 2021.11.17 14-26 2021.11.17 14-27.pdf ,c'est la dernière date qu'il faut prendre en compte.

a+

Rep1 = "T:\test\"
Fichier = Dir(Rep1)

listing = 1
Do While Fichier <> ""

variable = Right(Fichier, 20)
variable1 = Left(variable, 10)

listing = listing + 1

If CDate(variable1) < (Now- 8) Then 'Test la date du nom de fichier est plus vieille que 8 jours
Kill Chemin & Fichier & ".pdf" 'Supprime le fichier
End If

Fichier = Dir
Loop

La macro a quelques erreurs: exemple chemin?, & ".pdf" (il y est déjà dans fichier)

Bref

un fichier est TOUJOURS le bienvenu...

Pour mettre du code utilise </> dans la barre du haut...

  Dim rep1 As String, variable As String, variable1 As String, Fichier, listing As Byte
  rep1 = rep1 = "T:\test\"
  Fichier = Dir(rep1)
  listing = 1
  Do While Fichier <> ""
     variable = Right(Fichier, 20)
     variable1 = Left(variable, 10)
     On Error GoTo gesterr
     variable = DateSerial(Left(variable1, 4), Mid(variable1, 6, 2), Right(variable1, 2))
     listing = listing + 1
     If CDate(variable) < (Date - 8) Then 'Test la date du nom de fichier est plus vieille que 8 jours
       Kill rep1 & Fichier 'Supprime le fichier
     End If
     Fichier = Dir
  Loop
  Exit Sub
gesterr:
  MsgBox ("erreur")
  On Error GoTo 0

A+ François

Super ça fonctionne par contre est ce normal quand je fais F8 ça ne s'arrête jamais ?

Que veux dire gesterr: MsgBox ("erreur") On Error GoTo 0 ?

Merci

Je l'ai testé en faisant f8 et j'allais de ligne en ligne...

gesterreur: j'aurai put l'appeler toto ou autre

"On Error GoTo gesterr" renvoi directement vers la ligne gesterreur:

en cas d'erreur (problème de lecture de date ou autre la procédure s'arrête

"on error goto 0" c'est pour arrêter la gestion des erreurs

A+ François

merci

Rechercher des sujets similaires à "supprimer fichier ancien"