excel - VBA - Open files in folder and print names -
i want open of files in folder , have print out names of files.
i have set code opens files cannot print name. have separate code print name open 1 file. i'm failing @ combining 2 correctly. ideas?
code opens excel files:
‘set path progress folder sub openfiles() dim myfolder string dim myfile string myfolder = “c:\users\trembos\documents\tds\progress" myfile = dir(myfolder & "\*.xlsx") while myfile <> "" workbooks.open filename:=myfolder & "\" & myfile myfile = dir loop end sub code prints 1 file name:
'set path tds_working sub tds() workbooks.open ("c:\users\trembos\documents\tds\progress") end sub 'set dim sub loopthroughdirectory() dim objfso object dim objfolder object dim objfile object dim integer 'create instance of filesystemobject set objfso = createobject("scripting.filesystemobject") 'get folder object set objfolder = objfso.getfolder("c:\users\trembos\documents\tds\progress\") = 1 'loop through directory file , print names each objfile in objfolder.files 'print file name cells(i + 1, 1) = objfile.name next objfile end sub
this should work smoothly :
sub loopthroughdirectory() dim objfso object dim objfolder object dim objfile object dim myfolder string dim sht worksheet dim integer myfolder = "c:\users\trembos\documents\tds\progress\" set sht = activesheet 'create instance of filesystemobject set objfso = createobject("scripting.filesystemobject") 'get folder object set objfolder = objfso.getfolder(myfolder) = 1 'loop through directory file , print names each objfile in objfolder.files if lcase(right(objfile.name, 3)) <> "xls" , lcase(left(right(objfile.name, 4), 3)) <> "xls" else 'print file name sht.cells(i + 1, 1) = objfile.name = + 1 workbooks.open filename:=myfolder & objfile.name end if next objfile end sub
Comments
Post a Comment