运行 VBA宏时Vbscript编译报错
Vbscript compiling error when running VBA macro
所以我的问题是我无法让 VBScript 工作。我想使用此 post 中编写的 VBScript 自动执行此宏,它应执行下面的 VBA 代码。我收到的错误消息在第 2 行,错误是找不到文件。 VBScript 和 test.xlsm 文件位于同一文件夹中。如何才能不出错地访问 test.xlsm 文件?
到目前为止我的 VBA 代码:
Sub copySchedule()
Worksheets("Sheet2").Range("B2:F10").Copy Worksheets("Sheet1").Range("B2:F10")
ActiveWorkbook.Save
End Sub
到目前为止我的 VBScript 代码:
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("test.xlsm")
objExcel.Application.Run ""test.xlsm!copySchedule""
objExcel.Application.Quit
WScript.Quit
您只需要在宏名称周围加上一对引号(如果工作簿名称包含空格,您需要在名称周围加上撇号,如果您愿意,您可以随时使用它们)并且您应该包括完整的文件路径打开工作簿时。所以,例如:
Set objWorkbook = objExcel.Workbooks.Open("C:\some folder\test.xlsm")
objExcel.Application.Run "'test.xlsm!copySchedule'"
所以我的问题是我无法让 VBScript 工作。我想使用此 post 中编写的 VBScript 自动执行此宏,它应执行下面的 VBA 代码。我收到的错误消息在第 2 行,错误是找不到文件。 VBScript 和 test.xlsm 文件位于同一文件夹中。如何才能不出错地访问 test.xlsm 文件?
到目前为止我的 VBA 代码:
Sub copySchedule()
Worksheets("Sheet2").Range("B2:F10").Copy Worksheets("Sheet1").Range("B2:F10")
ActiveWorkbook.Save
End Sub
到目前为止我的 VBScript 代码:
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("test.xlsm")
objExcel.Application.Run ""test.xlsm!copySchedule""
objExcel.Application.Quit
WScript.Quit
您只需要在宏名称周围加上一对引号(如果工作簿名称包含空格,您需要在名称周围加上撇号,如果您愿意,您可以随时使用它们)并且您应该包括完整的文件路径打开工作簿时。所以,例如:
Set objWorkbook = objExcel.Workbooks.Open("C:\some folder\test.xlsm")
objExcel.Application.Run "'test.xlsm!copySchedule'"