Date de création d'un fichier

Date de création d'un fichier - VB/VBA/VBS - Programmation

Marsh Posté le 13-09-2006 à 21:07:55    

Bonjour à tous!
Voila, j'ai un script qui me fait une recherche de fichier sur le disque. Je choisis l'extension des fichiers que je veux rechercher aussi.
Le probleme c'est que je souhaiterai garder uniquement les fichier qui ont une date de création inférieure à 1 ans. Je ne sais pas du tout comment faire mais après quelques recherches.
Voici mon code :
 
msgbox "Recherche de documents Word (Ceci peut prendre quelques minutes)",, "Programme de sauvegarde"
strComputer = "."  
Set objFSO = CreateObject("Scripting.FileSystemObject" )
Set objWMIService = GetObject("winmgmts:" _  
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2" )  
Set colFiles = objWMIService.ExecQuery _
("SELECT * FROM CIM_DataFile WHERE Drive = 'C:' AND Extension = 'doc'" )
For Each objFile in colFiles  
'Wscript.Echo objFile.Name
objFSO.CopyFile objFile.Name, "\\G00577\sav$\" & Nommachine & "\"
Next
msgbox "Copie des fichiers terminés",,"Programme de sauvegarde"
 
 
Merci de m'aider!  :)

Reply

Marsh Posté le 13-09-2006 à 21:07:55   

Reply

Marsh Posté le 13-09-2006 à 23:08:05    

Dim fichier As Scripting.file
 
puis fichier.DateCreated
       fichier.DateLastModified
       fichier.DateCreated
 
     etc pour récupérer les infos et par exemple
 
    '  Pour effacer les fichiers par exemple
    If DateDiff("D", Fichier.DateLastModified, Now) > xyz Then Fichier.Delete
 
     

Reply

Marsh Posté le 14-09-2006 à 12:55:27    

Merci kiki29 pour ta réponse mais j'avoue que je comprend pas trés bien ton code.
Est-ce que je peux déja l'intégrer dans ma recherche?
Merci de m'eclairer à ce sujet!

Reply

Marsh Posté le 14-09-2006 à 19:17:04    

A toi de l'adapter et de le tester


Message édité par kiki29 le 14-09-2006 à 19:17:35
Reply

Marsh Posté le 15-09-2006 à 10:51:07    

AntoineASBO a écrit :

Merci kiki29 pour ta réponse mais j'avoue que je comprend pas trés bien ton code.
Est-ce que je peux déja l'intégrer dans ma recherche?
Merci de m'eclairer à ce sujet!


Ben il t'a donné les propriété d'un objet fichier à utiliser pour ce que tu veux.
 
Donc pour ce que tu veux, il faut utiliser objFile.dateCreated
 
If DateDiff("D", objFile.dateCreated, Now) > xyz Then Fichier.Delete  
 
Spa compliqué :o


---------------
"Mon modèle, c'est moi-même."
Reply

Marsh Posté le 15-09-2006 à 13:46:52    

C'est peut-être juste fénéant =)

Reply

Marsh Posté le 16-09-2006 à 15:08:57    

agkklr a écrit :

Ben il t'a donné les propriété d'un objet fichier à utiliser pour ce que tu veux.
 
Donc pour ce que tu veux, il faut utiliser objFile.dateCreated
 
If DateDiff("D", objFile.dateCreated, Now) > xyz Then Fichier.Delete  
 
Spa compliqué :o


 Si tu fais sa depuis 5 ans, tu trouves pas sa compliquer certes. Moi, j'ai attaqué le VBS, il y a seulement une semaine. Avec un minimun d'intelligence, vous pouvez comprendre qu'on ne peut pas tout deviner et comprendre dés le début.
Donc ton code, je le comprend mais j'arrive pas à l'adapté à ma recherche.  
Si vous etes si fort que sa, prendre 5min de plus pour m'expliquer de façon clair, ca vous côute pas grand chose non?

Reply

Marsh Posté le 16-09-2006 à 16:31:24    

ce n'est pas avec ce genre de réponse que tu obtiendras de l'aide

Reply

Marsh Posté le 16-09-2006 à 18:18:35    

Possible mais je suis honnête! Je demande rien d'autre que de l'aide d'ou le but d'un forum aussi. Si certains arrive pas à comprendre, j'y peux rien.

Reply

Marsh Posté le 17-09-2006 à 11:31:13    

Ben alors voilà :
 

Code :
  1. strComputer = "." 
  2. Set objFSO = CreateObject("Scripting.FileSystemObject" )
  3. Set objWMIService = GetObject("winmgmts:" _ 
  4. & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2" ) 
  5. Set colFiles = objWMIService.ExecQuery _
  6. ("SELECT * FROM CIM_DataFile WHERE Drive = 'C:' AND Extension = 'doc'" )
  7. For Each objFile in colFiles 
  8. 'Wscript.Echo objFile.Name
  9. If DateDiff("D", objFile.dateCreated, Now) > xyz Then
  10.         objFile.Delete
  11. Else
  12.         objFSO.CopyFile objFile.Name, "\\G00577\sav$\" & Nommachine & "\"
  13. End If
  14. Next
  15. msgbox "Copie des fichiers terminés",,"Programme de sauvegarde"


 
Ca doit ressembler à un truc comme ça. J'ai pas testé, il y a peut-être quelque syntaxe à vérifier, mais c'est l'idée
 
Stait vraiment pas compliqué :o


---------------
"Mon modèle, c'est moi-même."
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed