Home » エクセルマクロ・Excel VBAの使い方 » イベントプロシージャ » AUTO_OPEN・Workbook_Openのデバッグ

対象:Excel 2010, Excel 2013, Windows版Excel 2016

コードの途中からステップ実行できるようになるブレークポイントは、VBE(Visual Basic Editor)でデバッグを行う際の、有効な機能のひとつです。

しかし(場合によっては)不便なこともあります。
ブックを閉じるとブレークポイントが解除されるという点です。

ブレークポイントはブックを閉じると解除される

ブックを閉じるとブレークポイントが解除されるのは、通常は便利ですけれど、一部のマクロやイベントプロシージャでは不便になってしまいます。

[スポンサードリンク]

ブックを開くときに自動的に実行されるAUTO_OPENマクロや、Workbook_Openイベントプロシージャのデバッグに、ブレークポイントは使えないからです。

このサイト『インストラクターのネタ帳』のアクセスログでも、
「excel auto open デバッグ」
「excel auto open ブレークポイント」
「workbook_open デバッグ方法」
といった検索キーワードが見つかります。

AUTO_OPEN・Workbook_OpenのデバッグにはStopステートメント

AUTO_OPENマクロや、Workbook_Openイベントプロシージャのデバッグには、Stopステートメントを使いましょう。

AUTO_OPENマクロのデバッグ方法

AUTO_OPENマクロの先頭に以下のようにStopステートメントを書いておきます。
Sub AUTO_OPEN()
 Stop
 ' 何らかの処理
End Sub

すると、このAUTO_OPENマクロの書かれているブックが開かれたときに、ブレークポイントを設定していたのと同様に、ステップ実行できる状態になります。

Workbook_Openイベントプロシージャのデバッグ方法

Workbook_Openイベントプロシージャの場合も同じです。
Private Sub Workbook_Open()
 Stop
 ' 何らかの処理
End Sub

Stopステートメントの削除・コメントアウトを忘れないように

Stopステートメントとブレークポイントとの違いは、コードを書いているかどうかです。

ブレークポイントの場合はブックを閉じれば自動的に解除されますが、Stopステートメントは勝手には消されません。

デバッグ作業が終わったら、削除するかコメントアウトするのを忘れないようにしましょう。

最終更新日時:2019-02-15 09:54

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » イベントプロシージャ » AUTO_OPEN・Workbook_Openのデバッグ

「イベントプロシージャ」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.