Test valeur Year(oFl.DateCreated)
Bonjour !
je cherche à déplacer des fichiers d'un repertoire en fonction de l'année de leur création.
Lorsque j'éxecute le code "code1" ci-dessous, j'obtiens l'affichage voulu.
En revanche, des que j'essaye de réaliser un test ("Code 2") de valeur avec un if entre
la date obtenue avec Year(oFl.DateCreated) et par exemple la date saisie via un input (ex : annee = InputBox ("Jusqu'à quelle année voulez vous archiver ?") la condition n'est pas respectée.
Peut être me faut il convertir via une fonction du style partdate une de mes
variable ?
Mon "if" est peut être mal formé ?
Alors si quelqu'un pouvais me donner un coup de main ?
Merci
:?
Code 1
*****
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| Dim stRep
Dim annee,anneecreation
Dim oFSO,oFSO2,noFld,oFl
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFSO2 = CreateObject("Scripting.FileSystemObject")
stRep = "C:\test\s1"
'annee = InputBox ("Jusqu'à quelle année voulez vous archiver ?")
If oFSO2.FolderExists(stRep) Then
For each oFl in oFSO2.GetFolder(stRep).Files
Select Case Year(oFl.DateCreated)
case 2005:
'oFl.Move "c:\test\2005\"
msgbox "2005"
case 2006:
msgbox "2006"
'oFl.Move "c:\test\2006\"
case 2007:
msgbox "2007"
'oFl.Move "c:\test\2007\"
case else:
msgbox "long ago"
End Select
Next
End if |
Code 2
*****
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| Dim stRep
Dim annee,anneecreation
Dim oFSO,oFSO2,noFld,oFl
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFSO2 = CreateObject("Scripting.FileSystemObject")
stRep = "C:\test\s1"
annee = InputBox ("Jusqu'à quelle année voulez vous archiver ?")
If oFSO2.FolderExists(stRep) Then
For each oFl in oFSO2.GetFolder(stRep).Files
msgbox oFl.Name & " " & Year(oFl.DateCreated)
anneecreation=Year(oFl.DateCreated)
msgbox "année de création " & anneecreation
ICI If anneecreation<annee Then
msgbox "fichier à archiver" & annee & " " & anneecreation
End if
Next
End if |