' 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