我有一个非常基本的问题,但无法在互联网上找到答案。
在Powerpoint 2010中,我有一个宏,我想在每次打开Powerpoint文档时执行。如何实现这一目标?
谢谢!
答案 0 :(得分:5)
虽然Auto_Open不在PowerPoint演示文稿中运行,但您可以伪造它。将CustomUI部件添加到演示文稿,然后使用CustomUI OnLoad回调在演示文稿打开时运行代码。 CustomUI部分只需要CustomUI标签。
从此处获取自定义用户界面编辑器:http://openxmldeveloper.org/articles/customuieditor.aspx
在自定义UI编辑器中打开演示文稿。从“插入”菜单中插入CustomUI部件:
现在输入一些简单的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网站上遇到它:Run Code When PowerPoint Opens。
答案 1 :(得分:0)
我正在使用PowerPoint 2016,因此尽管文档表明适用于PowerPoint 2016、2013、2010、2007,但我无法使用早期版本。此方法不需要任何加载项或应用程序挂钩即可处理事件。
从命令行启动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。)
重要提示,如果您尝试使用宏自动开始幻灯片放映。在宏的开头添加一秒或更多秒的延迟,以允许应用程序完成其启动序列。如果您没有启动幻灯片,则应用程序将在完成启动时失去焦点,从而将幻灯片推到后台。
答案 2 :(得分:0)
假设宏的类型与自动事件相关,例如Auto_open(),Auto_close(),Auto_print()等,为了使powerpoint在打开powerpoint文件时执行宏,我们需要包含Powerpoint加载项或其他选项可能是将文件另存为.ppa或.ppam。
有关更多详细信息,以及要下载AutoEvents zip文件,请参考链接:http://skp.mvps.org/autoevents.htm
答案 3 :(得分:-5)
尝试编写此功能。
Sub Auto_Open()
MsgBox("welcome")
End Sub
替换代码中的msgbox。