ブックが非アクティブになった時に発生するイベントプロシージャは「Workbook_Deactivate」を使います。
構文
構文は以下の通りです。
' ここに実行したいコードを記述する
End Sub
解説
このイベントプロシージャを使用することで、ブックが非アクティブになったときに特定の処理を実行することができます。たとえば、ブックが非アクティブになったら自動的に保存する、特定のセルの値をクリアする、またはメッセージボックスを表示するなどの動作を設定することができます。
使い方
Workbook_Deactivateイベントプロシージャを使うためには、VBAエディタを開いて以下の手順を実行します。
1.Excelブックを開きます。
2.「Alt + F11」キーを押してVBAエディタを開きます。
3.左側のプロジェクトエクスプローラーウィンドウで、対象のブックをダブルクリックします。
4.「Insert」メニューから「Module」を選択し、新しいモジュールを挿入します。
5.モジュール内に以下のコードを記述します。
' ここに実行したいコードを記述する
End Sub
6.上記のコードのコメント部分に、ブックが非アクティブになったときに実行したい処理を記述します。
プログラミング例
以下に、Workbook_Deactivateイベントプロシージャのプログラミング例を示します。
例1: 非アクティブになったときにメッセージボックスを表示する
MsgBox "このブックは非アクティブになりました。"
End Sub
例2: 非アクティブになったときに自動的に保存する
ThisWorkbook.Save
End Sub
例3: 非アクティブになったときに特定のセルの値をクリアする
ThisWorkbook.Sheets("Sheet1").Range("A1").ClearContents
End Sub
上記の例では、例1では非アクティブになったときにメッセージボックスが表示されます。例2では自動的にブックが保存されます。例3では非アクティブになったときにSheet1のA1セルの値がクリアされます。
まとめ
Workbook_Deactivateイベントプロシージャは、Excelのブックが非アクティブになったときに発生するイベントです。このイベントを利用することで、ブックが非アクティブになったときに特定の処理を実行することができます。使い方は、VBAエディタで対象のブックのモジュールにWorkbook_Deactivateイベントプロシージャを追加し、その中に実行したい処理を記述します。