PowerPointでSlideShowBeginイベントを使用するためには、あなたがクラスモジュールには次のように設定されている必要があります:内部の非クラスモジュールの、そして、パワーポイントVBA App_SlideShowBegin
Public WithEvents App As Application
Private Sub App_SlideShowBegin(ByVal Wn As SlideShowWindow)
MsgBox "SlideShowBegin"
End Sub
を、あなたが作成する必要がありますそのタイプのオブジェクトを作成し、アプリケーションをアプリケーションに設定します。今
Dim X As New Class1
Sub InitializeApp()
Set X.App = Application
End Sub
、私が持っている唯一の問題は、あなたが手動でPowerPointでマクロメニューでInitializeAppと呼ばれていない場合、イベントは動作しません、です。このサブを含むスライドショーの始めに何かが呼び出される前に、このサブメニューを呼び出さなければなりません。
パワーポイントを実行する前にこのサブプログラムを呼び出すにはどうすればよいですか?これを行うより良い方法はありますか?
EDIT:
私はに、Class_Initializeを使用してみましたが、それが唯一それが最初に使用された後に呼び出されるか、Dim X as Class1; X = new Class1
通常、イベントハンドラはアドインの一部としてインストールされます。アドインのロード時に常に実行されるAuto_Openサブルーチンでは、クラスを初期化します。単一のプレゼンテーションにイベントハンドラを含める場合は、マウスにマウスを重ねるかクリックすると、イベントハンドラ内で次のスライドに移動するマクロを起動する図形を含めることができます。 –
これを回答として投稿することができます。なぜなら、これをやり遂げるつもりであるからです。 –
完了。私にそれが働いたことを知らせてくれてありがとう。 –