- なぜか出力結果が合わない…
- エラーが出るけど、原因がわからない…
VBAを使っていると、必ずこんな場面に遭遇します。
そんなときに強力な武器になるのが 「ブレークポイント」 と 「ウォッチウインドウ」 です。
この記事では、VBAエディタ(VBE)の標準機能を使ったデバッグ術を実例付きで解説します。
1. ブレークポイント
ブレークポイントは、VBAコードの特定の行でプログラムを一時停止させる仕組みです。
これにより、一時停止した時点の変数の中身やプログラムの流れを確認できます。
設定方法
Alt
+ F11
キーをを押して、エディタを開きます。

以下のようにF9キーを押すと赤く変わります。

これでブレークポイントが貼れました。
F5
キーを押して実行してみましょう。

ブレークポイントで処理が止まることが確認できました。
解除方法
再度F9キーを押せば、ブレークポイントは解除されます。

ブレークモードでできること
ブレークポイントで停止すると ブレークモード になります。
ブレークモードでは通常時と違って、次のようなことができます。
1. 変数の値を確認
変数の上にポインタをあてると、変数の中に入っている値を見ることができます。

2. ステップ実行
F8
キーを押すと、ブレークポイントから1行ずつ進めることができます。

3. 変数の値を変更
イミディエイトウィンドウから変数の値を変更できます。

2. ウォッチウインドウ
ウォッチウインドウ を使うと、特定の変数や式をリアルタイムで監視できます。
「この変数、どのタイミングで変わるの?」というときに便利です。
開き方
メニュー「表示」→「ウォッチウインドウ」で開くことができます。

監視の追加方法
ウォッチしたい変数を右クリック →「ウォッチ式の追加」を選択します。

活用例
Dim total As Long
total = total + 10
この total
をウォッチしておくと、どの行で値が加算されているか一目で分かります。
最初は変数は初期化された状態なので0です。

式を通過すると値が変わることが確認できます。

まとめ
ブレークポイントとウォッチウィンドウについて解説しました。
これらを使いこなすことで、エラーの原因調査が素早くできるようになります。
なお、エラーの原因調査をする以前にエラーに強い堅牢なシステムを作っておくに越したことはありません。
そのためにも、以下の記事も参考にしつつエラーハンドリングの方法もマスターすることをおすすめします。

コメント