运行ExcelmacrosVBScript时出错

从AutoSys运行一个作业,我得到一个错误。 VBS运行一个Excelmacros。 VBS代码:

Option Explicit Dim xlApp, xlBook Set xlApp = CreateObject("Excel.Application") On Error Resume Next set xlBook = xlApp.Workbooks.Open("Z:\Confidential Restricted\Weekly_HR_Employees_Macro.xlsm",0, False) xlApp.Run "Weekly_HR_Employees_Macro.Weekly_HR_Employees_Macro" xlBook.Close True xlApp.Quit set xlBook = Nothing Set xlApp = Nothing 

错误:

 Microsoft VBScript runtime error: ActiveX component can't create object: 'Excel.Application' 

您正在使用GetObject语法与CreateObject方法。 你需要使用:

 Set xlApp = CreateObject("Excel.Application") 

检查this答案的更多细节。

尽pipe脚本在我的机器上运行,但它不会在AutoSys作业使用的机器上运行。 我最终发现,Autosys作业正在使用的机器没有安装Microsoft Office。

你可以使用GetObject(“Excel.Application”),但是在使用之前,你需要确保你打开了一个excel的实例。 GetObject将得到这个打开的Excel实例的引用,并让你使用它。