InvisibleApp.DocumentSaved イベント (Visio)
図面を保存した後に発生します。
構文
式。DocumentSaved (doc)
式InvisibleApp オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
doc | 必須 | [IVDOCUMENT] | 保存された図面です。 |
注釈
Microsoft Visual Basic または Visual Basic for Applications (VBA) を使用している場合、このトピックの構文を使用して、イベントを一般的な方法で効率的に処理できます。
独自の Event オブジェクトを作成する場合は、Add メソッドまたは AddAdvise メソッドを使用します。
アドオンを実行する Event オブジェクトを作成するには、EventList コレクションに対して Add メソッドを使用します。
通知を受け取る Event オブジェクトを作成するには、AddAdvise メソッドを使用します。
作成するイベントのイベント コードについては、「イベント コード」を参照してください。
例
この例では、Microsoft Visio のソース オブジェクト ( Document オブジェクトなど) によって発生したイベントを処理するクラス モジュールを作成する方法を示します。 このモジュールは、関数 VisEventProc で構成され、DocumentSaved、PageAdded、さらに ShapesDeleted の 3 つのイベントをチェックする Select Case ブロックを使用します。 他のイベントは、既定のケース (Case Else) に分類されます。 各 Case ブロックは、発生するイベントの名前とイベント コードを含む文字列 (strMessage) を構築します。 最後に、関数が現在のウィンドウにその文字列を表示します。
このサンプル コードを VBA または Visual Basic の新しいクラス モジュールにコピーし、モジュール clsEventSink という名前を付けます。 その後、イベント シンク モジュールを使用して、クラス インスタンスにイベント発生の通知を送信する clsEventSink クラスと Event オブジェクトのインスタンスを作成できます。 イベント シンク モジュールを作成する方法については、 AddAdvise メソッドの例を参照してください。
Implements Visio.IVisEventProc
'Declare visEvtAdd as a 2-byte value
'to avoid a run-time overflow error
Private Const visEvtAdd% = &H8000
Private Function IVisEventProc_VisEventProc( _
ByVal nEventCode As Integer, _
ByVal pSourceObj As Object, _
ByVal nEventID As Long, _
ByVal nEventSeqNum As Long, _
ByVal pSubjectObj As Object, _
ByVal vMoreInfo As Variant) As Variant
Dim strMessage As String
'Find out which event fired
Select Case nEventCode
Case visEvtCodeDocSave
strMessage = "DocumentSaved (" & nEventCode & ")"
Case (visEvtPage + visEvtAdd)
strMessage = "PageAdded (" & nEventCode & ")"
Case visEvtCodeShapeDelete
strMessage = "ShapesDeleted(" & nEventCode & ")"
Case Else
strMessage = "Other (" & nEventCode & ")"
End Select
'Display the event name and the event code
Debug.Print strMessage
End Function
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。