VBScript打开Powerpoint并运行宏

时间:2017-01-20 00:59:20

标签: vbscript macros powerpoint

我正在尝试运行一个打开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代码错误地调用并运行宏。

0 个答案:

没有答案