我正在尝试运行一个打开powerpoint的VBScript并运行一个名为UpdateandBreaklinks的宏。我正在运行的脚本如下:
Dim oApp
Dim oPres
Dim oSlide
Set oApp = CreateObject("Powerpoint.Application")
oApp.visible = true
Set oPres = oApp.Presentations.Open("C:\Users\PPwithLinks.pptm")
Set oSlide = oPres.Slides(1).Duplicate
oApp.Run "PPwithLinks.pptm!UpdateandBreaklinks"
This获取Run和打开Powerpoint的脚本,但是Macro不是Ran。我在这一行收到错误:
oApp.Run "PPwithLinks.pptm!UpdateandBreaklinks"
我试图将其调整为:
oApp.Run "UpdateandBreaklinks"
但我仍然得到同样的错误。错误读作:
Application.Run: Invalid request. Sub or funtion not defined.
Code: 80048240
我已经研究过这个问题,我所能找到的就是人们用上面的代码解决了同样的问题。我不确定我做错了什么。
我已经进一步测试了这个问题,现在我正处于这个阶段:
所以,我创建了一个新的pptm,我在pptm中为MsgBox“Hello”创建了一个新的宏。当我用VBS调用pptm打开时,pptm打开,我仍然得到错误。
但是,进一步测试,如果我先打开pptm,然后调用VBS宏就会运行。(它打开另一个程序实例作为[只读]并运行宏。)
另外,如果我只是从VBS打开pptm(删除运行宏的行),然后尝试在PowerPoint中手动运行宏,那么我收到以下错误:“由于您的安全设置,宏已被禁用“。 我进入宏安全设置并且它们没有被更改,因此在我看来,当VBS打开pptm时,某些东西正在禁用宏,因此错误地将VBS代码错误地调用并运行宏。