我试图编写一个在PowerPoint 2013中打开PowerPoint演示文稿时自动执行的宏。 根据{{3}}和this article,这可以通过编写名为" Auto_Open"的
的VBA子例程来完成。A1
我想,这是一个非常基本的东西,但这对我来说仍然不起作用。 在信任中心,我启用了所有宏,以及"信任访问..."也签入。
我正在使用PowerPoint 2013.微软是否有可能不支持PowerPoint 2013中的自动宏?我还没有在互联网上找到有关此内容的任何信息,仅适用于this StackOverflow answer。
答案 0 :(得分:1)
当加载包含ADD-IN的ADD-IN时,Auto_Open子例程将自动触发,但常规PowerPoint文件中的相同子例程将不会自动运行。 mvps.org上的文章没有暗示其他情况;它是关于一个捕获事件的加载项,然后可以调用你编写的宏,但同样,它需要加载一个加载项。
加载项可以捕获表示打开和其他事件,并且可以触发检查演示文稿的代码以确定是否应该进行进一步处理... IOW,它可以检查这是否是您的演示文稿或某些随机的(它不应该触摸)。
答案 1 :(得分:0)
在我看来,没有简单的方法可以在PowerPoint中自动运行宏。
可以使用Auto_Open
运行宏,但功能非常有限。
1.使用代码创建* .pptm文件:
Sub Auto_Open()
MsgBox "Hello"
End Sub
2.将文件保存为加载项 - > * .ppam
3.打开PowerPoint文档并添加此加载项
每次运行PowerPoint时都会自动运行此加载项。在加载项中工作Auto_Open:)
写关于“小功能”的写作我的意思是(http://skp.mvps.org/ppafaq.htm#14):
在加载项中自动触发两个宏。 Auto_Open和Auto_Close。加载加载项时会触发Auto_Open,卸载加载项时会触发Auto_Close。您可以使用它们进行预处理,创建菜单项,设置事件处理程序等,或在退出时执行清理。
答案 2 :(得分:0)
虽然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。