Comment copier les fichiers crées du jour en VBScript

qmike Messages postés 1506 Date d'inscription mardi 19 juillet 2005 Statut Membre Dernière intervention 18 juin 2012 - 3 oct. 2011 à 16:06
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 4 oct. 2011 à 10:56
Bonjour
j'essais de copier les fichiers du jours avec le code suivant :

Dim DateCrea,DateJour
Dim objFSO, objFolder, objShell, strDirectory
Dim oFl
Set FSO = CreateObject("Scripting.FileSystemObject")
Set objFSO = CreateObject("Scripting.FileSystemObject")
DateJour = Now()
strDirCOPIE="c:\ESSAIDATE"
For Each Fichier in FSO.GetFolder(strDirCOPIE).Files
Set oFl = FSO.GetFile(Fichier)

DateCrea = oFl.DateLastModified
WScript.Echo " Date Fichier " & DateCrea
if DateCrea = DateJour then
Fichier.Copy "c:\ESSAIDATE\JOUR" &FileName, true
end if

Mais rien ne se copie
Merci pour vos réponses

5 réponses

4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
3 oct. 2011 à 17:28
Je vois deux choses.

1) DateCrea et peut être différent de DateJour. Sache que (en VB6 en tout cas) now() retourne la date et l'heure. Donc vérifie si DateCrea et DateJour sont réellement comparable

2) "c:\ESSAIDATE\JOUR" &FileName n'est pas un chemin valide. En effet si FileName vaut VbFrance.txt ton chemin sera donc
"c:\ESSAIDATE\JOURVbFrance.txt". Je te propose de changer ta ligne en "c:\ESSAIDATE\JOUR" &FileName
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
3 oct. 2011 à 17:54
Bonjour,
De mémoire (et non testé car pas VBS chez moi) :
Essaye ceci (corrige au besoin) :
For Each Fichier In FSO.GetFolder(strDirCOPIE).Files
  If DateDiff("d",Fichier.DateCreated,Datejour)=0 Then
    objFSO.CopyFile "ton_chemin_complet_avec_extension",True
    n=n+1
  End If
Next
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
3 oct. 2011 à 17:58
Ah oui : enlève le n = n+1 (laisse-le par contre si tu veux compter le nombre de fichiers copiés, hein)

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
qmike Messages postés 1506 Date d'inscription mardi 19 juillet 2005 Statut Membre Dernière intervention 18 juin 2012
4 oct. 2011 à 10:06
Bonjour à tous
Un grand merci pour le coup de main et la solution
Du coup avec le code suivant; je récupérer bien les fichiers crées du jour

For Each Fichier In FSO.GetFolder(strDirSAUVE).Files
If DateDiff("d",Fichier.DateCreated,Datejour)=0 Then
Fichier.Copy "c:\PROCEDUREDEGRADE\COPIE" &FileName, true
End If
Next
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
4 oct. 2011 à 10:56
pense alors à cliquer sur le tag "réponse acceptée" ===>> cela sera utile à d'autres forumeurs confrontés au même problème.

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
Rejoignez-nous