i have script work fine xls, wanted use xlsx. changed extension .xlsx , modified obj.workbook link ,51. doesnt perform open operation i'm not sure i'm missing.
workingdir = "c:\test\excel" savedir="c:\test\" extension = ".xlsx" dim fso, myfolder, filecoll, afile, filename, savename dim objexcel, objworkbook set fso = createobject("scripting.filesystemobject") set myfolder = fso.getfolder(workingdir) set filecoll = myfolder.files set objexcel = createobject("excel.application") objexcel.visible = false objexcel.displayalerts = false each afile in filecoll ext = right(afile.name,4) name= left(afile.name,len(afile.name)-3) rem changed if ucase(ext) = ucase(extension) 'open excel filename = left(afile,instrrev(afile,".")) set objworkbook = objexcel.workbooks.open(afile) savename = savedir & name & "csv" rem changed objworkbook.saveas savename,51 objworkbook.close end if next set objworkbook = nothing set objexcel = nothing set myfolder = nothing set filecoll = nothing fso.deletefile(workingdir&"\*"&extension) rem changed set fso = nothing
@wezel: have following lines generic , same causing issue when there change of extension length varies
old code
ext = right(afile.name,4) name= left(afile.name,len(afile.name)-3)
revised code
ext = right(afile.name,len(extension)) name= left(afile.name,len(afile.name)-len(extension))
have code generic 1 below, work situations , need vary first 4 lines according need
modified code
workingdir = "c:\test\excel" savedir="c:\test\" extension = ".xlsx" neededextension= ".csv" dim fso, myfolder, filecoll, afile, filename, savename dim objexcel, objworkbook set fso = createobject("scripting.filesystemobject") set myfolder = fso.getfolder(workingdir) set filecoll = myfolder.files set objexcel = createobject("excel.application") objexcel.visible = false objexcel.displayalerts = false each afile in filecoll ext = right(afile.name,len(extension)) rem changed name= left(afile.name,len(afile.name)-len(extension)) rem changed if ucase(ext) = ucase(extension) 'open excel filename = left(afile,instrrev(afile,".")) set objworkbook = objexcel.workbooks.open(afile) savename = savedir & name & neededextension rem changed objworkbook.saveas savename,51 objworkbook.close end if next set objworkbook = nothing set objexcel = nothing set myfolder = nothing set filecoll = nothing fso.deletefile(workingdir&"\*"&extension) rem changed set fso = nothing
kindly let me know if fit generic 1 needed
Comments
Post a Comment