教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAでブックが非アクティブになった時に処理を実行する方法

構文

構文は以下の通りです。

Private Sub Workbook_Deactivate()
    ' ブックが非アクティブになったときに実行したいコード
End Sub

解説

Workbook_Deactivateは、ブックがアクティブでなくなったとき、つまり別のブックがアクティブになったときに自動的に実行されるイベントです。このイベントを使用すると、ブックがアクティブでなくなったときに特定の処理を実行することができます。

プログラミング例

具体的なプログラミング例を紹介します。

Private Sub Workbook_Deactivate()
    MsgBox "このブックはアクティブでなくなりました。"
End Sub

上記のプログラムは、ブックがアクティブでなくなったときに「このブックはアクティブでなくなりました。」というメッセージを表示します。

まとめ

Workbook_Deactivateイベントは、ブックがアクティブでなくなったときに自動的に実行されるイベントです。このイベントを利用することで、ブックがアクティブでなくなったときにアクションを実行することができます。