' Script for moving/arranging files based on date of creation
' Are Westby 062106
' Start script
' Variables and constants
set fso = createobject("scripting.filesystemobject")
set folder = fso.getfolder("c:\bilder")
set shell = createObject("shell.application")
set oFolder = shell.namespace("c:\bilder\")
Const adVarChar = 200
Const adDate = 7
' Create and open recordset, and populate arrays
set rs = createobject("ador.recordset")
rs.fields.append "filename",adVarChar,255
rs.fields.append "createdate",adDate
rs.open
for each f in ofolder.items
set file = fso.getFile(folder & "\" & f.name)
set fdate = ofolder.getdetailsof(f.name,25)
'msgbox f.name
rs.addnew array("filename","createdate"), _
array(f.name,fdate)
rs.update
next
' Start loop
if not (rs.bof and rs.eof) then
rs.sort = "createdate desc"
rs.movefirst
do until rs.eof
' Create monthly folders, and trim foldernames to "yyyy.mm"
fcreatedate = rs.fields("createdate")
ffilename = folder & "\" & rs.fields("filename")
folderdate = folder & "\" & Mid(fcreatedate,7,4) & "." & Mid(fcreatedate,4,2) & "\"
if fso.folderexists(folderdate)=false then
fso.createfolder(folderdate)
end if
' Move each file to related folder
fso.movefile ffilename, folderdate
rs.movenext
loop
end if
' Close
set rs = nothing
set folder = nothing
set fso = nothing