Re: [问题] xlsx自动排程转换为xls

楼主: Catbert (宅男)   2015-03-20 16:22:50
※ 引述《b127699315 (b127699315)》之铭言:
: (若是和其他不同软件互动之问题 请记得一并填写)
: 软件:office
: 版本:2003-2010
: 各位大大神手们
: 小弟公司有一个excel表格上面有写很多宏在里面
: 执行后都会自去抓取指定路径的指定档案来做运算
: 但目前碰到一个问题因为宏是用VB6写的,里面程式不支援xlsx格式运算会失败
: 但它所捞取的资料有一些是xlsx档案,这样宏会失败不成功
: 那个宏文件每一小段时间就会执行一次,我总不能每10分钟就去手动转换xlsx到xls
: 这样不用上班啦XDDD,我知道有程式可以转xlsx到xls但是都没有定时排程执行的功能
: 请问有符合我需求的转档软件吗? 有自动排程执行功能的
: 感谢>"<
把下面的程式码贴到记事本后
另存新档成ConvertXLSXtoXLS.vbs
然后用windows的排程功能每10分钟执行
先试试吧
=====
Option Explicit
Dim objShell 'Declare SHELL
Dim objFSO 'Declare FileSystemObject
Dim FileLists 'Declare Files in Script Directory
Dim objFile 'Declare File Object
Dim objExcel 'Declare Excel Application
Dim objExcelBook'Declare Workbook
Dim FullName
Dim FileName
Set objShell = WScript.CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
'For I = 0 to objArgs.Count - 1
Set FileLists = objFSO.GetFolder(objShell.CurrentDirectory).Files
For Each objFile in FileLists
If(objFSO.GetExtensionName(objFile) ="xlsx") Then
'Set objXLBook =
objXLApp.Workbooks.Open(objFSO.GetAbsolutePathName(objFile))
'objXLBook.Worksheets.Copy , newWB.Worksheets(newWB.Worksheets.Count)
'objXLBook.Close
FullName = objFSO.GetAbsolutePathName(objFile)
FileName = Left(FullName, InstrRev(FullName, ".") )
Set objExcel = WScript.CreateObject("Excel.application")
set objExcelBook = objExcel.Workbooks.Open(FullName)
objExcel.application.visible=false
objExcel.application.displayalerts=false
objExcelBook.SaveAs FileName & "xls" , 56
objExcel.Application.Quit
objExcel.Quit
End If
Next
objExcel.application.visible=true
objExcel.application.displayalerts=true
Set objExcel = Nothing
set objExcelBook = Nothing
====

Links booklink

Contact Us: admin [ a t ] ucptt.com