运行 来自 VBS 文件的宏给出错误
Running a Macro from a VBS File Giving Error
我正在使用 vbs 代码自动打开 运行 一个 Excel 宏,但收到以下错误消息:
错误: 无法 运行 宏 "file location"。此工作簿中可能没有宏,或者所有宏都被禁用。
代码:800A03EC
资料来源:微软 Excel
VBS代码:
Dim ObjExcel, ObjWB
Set ObjExcel = CreateObject("Excel.Application")
ObjExcel.Visible = True
Set ObjWB = ObjExcel.Application.Run("C:\Automation\TestCasesBackupScript.xlsm!Backup3")
ObjWB.Close False
ObjExcel.Quit
Set ObjExcel = Nothing
宏已启用,"Backup3" 是 TestCasesBackupScript.xlsm 文件模块中的子名称。
希望得到反馈。
谢谢。
您在 Application.Run
中引用的工作簿必须在 Application
对象的上下文中打开。先打开再调用即可:
Dim ObjExcel, ObjWB
Set ObjExcel = CreateObject("Excel.Application")
ObjExcel.Visible = True
Set ObjWB = ObjExcel.Workbooks.Open("C:\Automation\TestCasesBackupScript.xlsm")
ObjWB.Application.Run("Backup3")
ObjWB.Close False
ObjExcel.Quit
Set ObjExcel = Nothing
注意:如果 Backup3
实际上 returns 一个工作簿对象(这是使用语法 Set ObjWB = ObjExcel.Application.Run
的唯一原因),您需要在其自己的变量中捕获该引用.
我正在使用 vbs 代码自动打开 运行 一个 Excel 宏,但收到以下错误消息:
错误: 无法 运行 宏 "file location"。此工作簿中可能没有宏,或者所有宏都被禁用。 代码:800A03EC 资料来源:微软 Excel
VBS代码:
Dim ObjExcel, ObjWB
Set ObjExcel = CreateObject("Excel.Application")
ObjExcel.Visible = True
Set ObjWB = ObjExcel.Application.Run("C:\Automation\TestCasesBackupScript.xlsm!Backup3")
ObjWB.Close False
ObjExcel.Quit
Set ObjExcel = Nothing
宏已启用,"Backup3" 是 TestCasesBackupScript.xlsm 文件模块中的子名称。
希望得到反馈。
谢谢。
您在 Application.Run
中引用的工作簿必须在 Application
对象的上下文中打开。先打开再调用即可:
Dim ObjExcel, ObjWB
Set ObjExcel = CreateObject("Excel.Application")
ObjExcel.Visible = True
Set ObjWB = ObjExcel.Workbooks.Open("C:\Automation\TestCasesBackupScript.xlsm")
ObjWB.Application.Run("Backup3")
ObjWB.Close False
ObjExcel.Quit
Set ObjExcel = Nothing
注意:如果 Backup3
实际上 returns 一个工作簿对象(这是使用语法 Set ObjWB = ObjExcel.Application.Run
的唯一原因),您需要在其自己的变量中捕获该引用.