アプリケーションのイベント : Excel

アプリケーションレベルのExcel VBAのイベントです。
グラフのイベントと同様に、クラスモジュールを作成する必要があります。



Homeに戻る > Excel プログラムのTipsへ


アプリケーションのイベント一覧

  • NewWorkbook : 新しいブックが作成された直後に発生します
  • SheetActivate : シートがアクティブになった直後に発生します
  • SheetBeforeDoubleClick : シートがダブルクリックされた瞬間に発生します
  • SheetBeforeRightClick : シートが右クリックされた瞬間に発生します
  • SheetCalculate : シートが再計算された直後に発生します
  • SheetChange : シートが変更された直後に発生します
  • SheetDeactivate : シートがアクティブでなくなった直後に発生します
  • SheetFollowHyperlink : シートのハイパーリンクがクリックされた直後に発生します
  • SheetPivotTableUpdate : ピボットテーブル レポートのシートが更新された直後に発生します。
  • SheetSelectionChange : シートの選択範囲が変更された直後に発生します
  • WindowActivate : ウィンドウがアクティブになった直後に発生します
  • WindowDeactivate : ウィンドウがアクティブでなくなった直後に発生します
  • WindowResize : ウィンドウのサイズが変更された直後に発生します
  • WorkbookActivate : ブックがアクティブになった直後に発生します
  • WorkbookAddinInstall : ブックにアドインが組み込まれた直後に発生します
  • WorkbookAddinUninstall : ブックからアドインが解除された直後に発生します
  • WorkbookBeforeClose : ブックが閉じる直前に発生します
  • WorkbookBeforePrint : 印刷が実行される直前に発生します
  • WorkbookBeforeSave : 保存される直前に発生します
  • WorkbookDeactivate : ブックがアクティブでなくなった直後に発生します
  • WorkbookNewSheet : 新しいシートが作成された直後に発生します
  • WorkbookOpen : ブックが開いた直後に発生します
  • WorkbookPivotTableCloseConnection : ピボットテーブル レポートの接続が閉じた直後に発生します
  • WorkbookPivotTableOpenConnection : ピボットテーブル レポートの接続が開いた直後に発生します

Excel VBAでイベントの使用手順

1) メニューの挿入「クラスモジュール」をクリックします
VBE画面でクラスモジュールを挿入

3) クラスモジュール内に下記のコードを入力します
'イベント用の変数
Public WithEvents appevents As Application
クラスにコードを入力

4) MyGraphObjectが作成され、イベントが選択できるようになります
ここでは、WorkbookBeforePrintイベントを作成しました

'WorkbookBeforePrintイベント
Private Sub appevents_WorkbookBeforePrint(ByVal Wb As Workbook, Cancel As Boolean)
MsgBox "印刷が開始されます"
End Sub
標準モジュールにイベントコードを入力

5) 標準モジュールに、Class1と関連付けるコードを入力します

'Class1のオブジェクト
Private MyEvents As New Class1

'関連付ける
Public Sub InitializeEvents()
Set MyEvents.appevents = Application
End Sub

6) 開始前に、InitializeEventsプロシージャーを実行します
これで、印刷開始前のイベントが動作できるようになります

印刷プレビューボタンをクリックすると、イベントが実行され、メッセージボックスが表示されます
印刷直前のイベントをキャッチ


Homeに戻る > Excel プログラムのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved