7

我有一个非常基本的问题,但在互联网上找不到答案。
在 Powerpoint 2010 中,我有一个宏,我希望在每次打开 Powerpoint 文档时执行该宏。如何做到这一点?

谢谢 !

4

3 回答 3

5

虽然 Auto_Open 不在 PowerPoint 演示文稿中运行,但您可以伪造它。将 CustomUI 部件添加到演示文稿,然后使用 CustomUI OnLoad 回调在演示文稿打开时运行代码。CustomUI 部分只需要 CustomUI 标记。

从这里获取自定义 UI 编辑器:http: //openxmldeveloper.org/articles/customuieditor.aspx

在自定义 UI 编辑器中打开演示文稿。从 Insert 菜单插入 CustomUI 部件:

添加自定义 UI 部件

现在输入一些简单的 RibbonX 代码,如下所示:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" 
onLoad="MyOnloadProcedure" >
</customUI>

现在编写您的打开程序:

Sub MyOnloadProcedure()
    MsgBox "Hello"    
End Sub

如果加载项中同时具有此过程和 Auto_Open 过程,则 Auto_Open 首先运行。

完全披露:虽然我想到了使用这种方法并在 Excel 中使用过,但我一直等到我在 PPT Alchemy 网站上第一次遇到它:当 PowerPoint 打开时运行代码

于 2016-07-10T19:22:32.133 回答
1

我使用的是 PowerPoint 2016,所以我不能代表早期版本,尽管文档表明这适用于 PowerPoint 版本 2016、2013、2010、2007。此方法不需要任何加载项或应用程序挂钩来处理事件。

参考链接: https ://support.office.com/en-us/article/command-line-switches-for-microsoft-office-products-079164cd-4ef5-4178-b235-441737deb3a6?ocmsassetID=HA010153889&CTT=1&CorrelationId=ea39d200 -aa81-4d6e-8302-afff4c65859e&ui=en-US&rs=en-US&ad=US#ID0EAABAAA=PowerPoint,_PowerPoint_Viewer )

从命令行启动 PowerPoint 并使用 /M 开关让 PowerPoint 在启动命名演示文件时运行指定的宏。

最简单的方法是创建 PowerPoint 应用程序的快捷方式。然后转到快捷方式的属性窗口并选择快捷方式选项卡。接下来,将 /M 开关、您的演示文件名(包括路径)和要运行的宏的名称(区分大小写并且必须是演示文稿的一部分)添加到目标字段的末尾。双击快捷方式,瞧!

示例:我的演示文稿是 C:\myPPTpres.pptm,宏是 Run_Slide_Show,因此我需要将 /M "C:\myPPTpres.pptm" "Run_Slide_Show" 添加到目标字段中现有文本的末尾。

"C:\Program Files (x86)\Microsoft Office\root\Office16\POWERPNT.EXE" /M "C:\myPPTpres.pptm" "Run_Slide_Show"

确保您正在运行启用宏的演示文稿版本(在 2016 年,它具有 .pptm 扩展名。)

如果您尝试使用宏自动开始幻灯片放映,请注意重要事项。在宏的开头添加一秒或多秒的延迟,以允许应用程序完成其启动顺序。如果您不这样做,幻灯片将启动,但应用程序将在完成启动时窃取焦点,将您的幻灯片推到后台。

于 2018-09-02T17:15:51.110 回答
0

假设宏的类型与自动事件相关,例如 Auto_open()、Auto_close()、Auto_print() 等,为了让 powerpoint 在打开 powerpoint 文件时执行宏,我们需要包含 Powerpoint 插件或其他选项将文件另存为 .ppa 或 .ppam。

有关更多详细信息和下载 AutoEvents zip 文件,请参阅链接:http ://skp.mvps.org/autoevents.htm

于 2018-11-15T05:55:01.253 回答