我在VBA中有一个子程序,当我们打开一个PowerPoint演示文稿时执行,但我想在加载一个加载项时执行该子程序。
我该怎么做?
答案 0 :(得分:1)
如果我正确理解你,你有一个加载项,你只想在加载插件时运行现有幻灯片的子程序。
如果是这样,以下是如何执行此操作的说明:
创建幻灯片,将其另存为 “Presentation3.pptm”(启用宏 PPT for 2007)。打开VBE并放入 在以下代码中:
Sub AddText()
Dim p As Presentation
Set p = ActivePresentation
Dim sh As Shape
Set sh = p.Slides(1).Shapes.AddTextbox(msoTextOrientationHorizontal, 100, 100, 100, 100)
sh.TextFrame.TextRange.Text = "hello there"
End Sub
立即创建加载项。创建另一个 甲板,去VBE并把它放进去 任何模块:
Sub Auto_Open()
Dim p As Presentation
Set p = Presentations("Presentation3")
Application.Run (p.Name & "!AddText")
End Sub
现在将此加载项另存为PowerPoint 加载项(.ppam)。安装并加载 addin(尝试卸载/再次加载,如果它 不会触发)你应该有 在活动状态上创建的文本框 介绍
注意#2:Application.Run (p.Name & "!AddText")
。演示名称(包括扩展名)和“!”使用子例程的名称是在另一个演示文稿中运行宏。