M. デバッキング

(vba25)
(vba25)

デバッグとは、処理のバグ、エラーなどを修正して、想定通りコードが動くようにしていく作業のことです。

 

以下を学びます。

  • Debug.Print を使ったシンプルなデバッグ方法
  • ブレークポイントを使ったステップ実行方法
  • 併せて便利なイミディエイトウィンドウの使い方

M-1. デバッグ方法1: イミディエイトウィンドウに値を出力

一番シンプルで、一行コードを書くだけ。 

  • Debug.Print 値

イミディエイトウィンドウに値を書き出すことができる。

値は文字列、数値、変数などが使える。

 

  1.  VBE で、「イミディエイトウィンドウ」を表示する

VBE を起動する

表示」から「イミディエイト ウインドウ」を選択する

(j01)「イミディエイト ウィンドウ」を表示する
(j01)「イミディエイト ウィンドウ」を表示する

「イミディエイト ウィンドウ」が表示される

(j02)「イミディエイト ウィンドウ」が表示される
(j02)「イミディエイト ウィンドウ」が表示される
  1.  Debug.Print で「イミディエイトウィンドウ」に表示する

以下のように、「Debug.Print 値」をプロシージャの中で使い、その時点での変数の確認ができる。

(j03) Debug.Print でメッセージ出力を確認する
(j03) Debug.Print でメッセージ出力を確認する

M-2. デバッグ方法2: ブレークポイントを貼ってステップ実行

ブレークポイントで処理を止めて一行ずつステップ実行することで、処理の動き、変数の値などを確認しつつ処理を修正することができる。

  1.  ブレークポイントの貼り方

コードウインドウ内の処理を止めたい行の左端をクリックするとブレークポイントを付けることができる。

(j04) 目的の行の左端をクリックする
(j04) 目的の行の左端をクリックする

ブレークポイントが「Debug.Print strMessage」に設定され、イミディエイト ウィンドウに値を出力する前に処理を止めることができる。

(j05) ブレークポイントが設定された
(j05) ブレークポイントが設定された
  1.  ステップ実行する
  1. 実行」を押すと、(「イミディエイトウィンドウ」に出力が出される前の)ブレークポイントの手前で止まった。
(j06)「ブレークポイント」の手前でストップ
(j06)「ブレークポイント」の手前でストップ
  1. そこで「F8ステップ イン)」を押すと一行実施され(「イミディエイトウインドウ」に出力され)次の行(ここでは「End Sub」)で止まる。
(j07)「F8」キーで一行実行されて次の行でストップする
(j07)「F8」キーで一行実行されて次の行でストップする