我有下面顯示的代碼,它打開工作簿並運行相應的宏。通過excel運行此腳本工作得很好,但使用相同的代碼運行.vbs文件不會運行宏。我已經嘗試雙擊該文件並通過「cscript.exe LaunchMacro.vbs」在cmd提示符下運行它。另外,使用WScript.Echo不會打印到我的命令行。我在這裏錯過了什麼嗎?VBA:無法實現excel外的Excel VBS
謝謝!
Option Explicit
Sub LaunchMacro()
Dim xlApp, xlBook
Dim oShell: Set oShell = CreateObject("WScript.Shell")
oShell.CurrentDirectory = "H:"
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
xlApp.Application.Visible = False
Set xlBook = xlApp.Workbooks.Open("H:\SW Tool Resources\test\tester.xlsm")
MsgBox ("File Opened")
xlApp.DisplayAlerts = False
xlApp.Application.Run ("tester.xlsm!Module3.split")
MsgBox ("Application Should Have Run")
xlBook.Saved = True
xlApp.Quit
Set xlBook = Nothing
Set xlApp = Nothing
End Sub
即使有明顯的相似之處VBS是不一樣的VBA(應用程序的Visual Basic),不幸的是,這會不會是複製和粘貼一樣簡單來自Excel VBA的代碼。 – ChrisProsser
我可以問一下將代碼移動到.vbs腳本的動機是什麼? – ChrisProsser