※ 引述《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
====