首页 文章

Powerpoint VBA App_SlideShowBegin

提问于
浏览
6

要在Powerpoint中使用SlideShowBegin事件,您必须按以下方式配置类模块:

Public WithEvents App As Application

    Private Sub App_SlideShowBegin(ByVal Wn As SlideShowWindow)
        MsgBox "SlideShowBegin"
    End Sub

然后,在非类模块内部,您必须创建该类型的对象并将App设置为Application .

Dim X As New Class1

Sub InitializeApp()
Set X.App = Application
End Sub

现在,我唯一的问题是,如果您没有使用Powerpoint中的宏菜单手动调用InitializeApp,则事件不起作用 . 你必须先调用这个子,然后才能在幻灯片的开头调用包含这个子的东西 .

在运行我的powerpoint之前,如何调用此sub?有一个更好的方法吗?

编辑:

我已经尝试过使用Class_Initialize,但只有在第一次使用它时才会被调用,或者你做了一个像 Dim X as Class1; X = new Class1 这样的语句

1 回答

  • 1

    通常,事件处理程序作为外接程序的一部分安装,您可以在Auto_Open子例程中初始化该类,该子例程始终在加载项加载时运行 . 如果要在单个表示中包含事件处理程序,则使其初始化的一种方法是包括一个形状,当moused over或clicked触发宏时,该形状将进入事件处理程序并转到下一张幻灯片 .

相关问题