Supprimer le contenu d'un dossier avec une macro

la mouette

XLDnaute Nouveau
Bonjour, :)

je cherche à supprimer le contenu d'un dossier par l'intermediaire d'une macro.

J'ai tésté la fonction "kill" avec le chemin vers le dossier mais ça n'as pas l'air de fonctionner.

Help me please :D.
 

lion_of_ethiopia

XLDnaute Nouveau
Re : Supprimer le contenu d'un dossier avec une macro

Bonsoir,
Mon appel au secours fonctionne bien on dirais:)
Désolé mais je n'avais pas le choix...
Oui Catrice les dates sont a récupérer dans les noms des fichiers. Exemple si j'ai deux fichiers nommés ainsi -> test- 14-4-2009 - 15H24m45s.xls et
test- 10-4-2009 - 11H24m45s.xls. Si j'ai envie que ma macro ne supprime que le fichier nommé ->test- 10-4-2009 - 11H24m45s.xls comment le faire?

Le code de mromain pourrais marché mais ça ne tiens pas compte du nom des fichiers. Et en plus là présentement pour le testé je ne saurais le faire étant donné que tous mes fichiers excels que je génèrent sont créer aujourd'hui et donc modified aussi today.
Merci pour l'aide
 

Catrice

XLDnaute Barbatruc
Re : Supprimer le contenu d'un dossier avec une macro

Re,

Ci-joint un exemple à tester :

Edit : le code semble pouvoir etre simplifié comme suit (par rapport au fichier attaché) :
(Les espaces dans le nom de fichier ne genent pour la date)

Sub test()
Chemin = ActiveWorkbook.Path & "\Fichiers\"
Fic = Dir(Chemin)
Do While Fic <> ""
Mavar = Split(Fic, "-")
If DateSerial(Mavar(3), Mavar(2), Mavar(1)) < Date - 3 Then Kill Chemin & Fic
Fic = Dir
Loop
End Sub

La version adaptée de mRomain :
Sub test2()
Dim myFso, myFile, myFolder
Chemin = ActiveWorkbook.Path & "\Fichiers\"
Set myFso = CreateObject("Scripting.FileSystemObject")
Set myFolder = myFso.GetFolder(Chemin)
For Each myFile In myFolder.Files
Mavar = Split(myFile, "-")
If DateSerial(Mavar(3), Mavar(2), Mavar(1)) < Date - 3 Then Kill Chemin & myFile.Name
Next myFile
End Sub


Si tu avais le choix, faire un nouveau Post dans le Fil ouvert ;)
 

Pièces jointes

  • Test.zip
    15.5 KB · Affichages: 69
  • Test.zip
    15.5 KB · Affichages: 68
  • Test.zip
    15.5 KB · Affichages: 65
Dernière édition:

havopti

XLDnaute Nouveau
Re : Supprimer le contenu d'un dossier avec une macro

Salut à tous je déterre le sujet car en essayent les 2 bouts de code excel me retourne erreur 70 permission refusé

que faire?

j'avoue que je ne suis pas un pro de vba

Bon j'ai trouvé la solution mais cela ne me convient pas car je dois passer par un second classeur

bref je souhaiterai supprimer automatiquement les onglets d'une feuille sous conditions de non présence d'un dossier sur mon pc ou sur le systeme pour des raisons de sécurité et empecher une copie

pour cela j'ai trouvé cette fonction

While Sheets.Count > 1
Sheets(1).Delete 'Efface la 1ère feuille
Wend

reste a poser la condition et lancer un enregistrement automatique une fois les onglets supprimés. Si quelqu'un a une solution ca m'aiderai grandement

merci
 
Dernière édition:

Discussions similaires

Réponses
26
Affichages
379

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 187
dernier inscrit
ebenhamel