目次

目的

  • VBE(Visual Basic Editor)のウォッチ式を使用したい。
  • 変数の値が条件に一致した時にマクロを中断したい。

目次まで戻る

その一例

  1. VBE を起動します。Alt+F11 キーでも起動します。
  2. 「Module1」に下記コードを記述します。「ウォッチ式使用」というマクロ名になっています。
    Sub ウォッチ式使用()
    Dim a
    For a = 0 To 10
    Debug.Print a
    Next
    End Sub
  3. 「ウォッチウィンドウ」を表示します。
    1. 「表示」をクリック。(下図 1)
    2. 「ウォッチウィンドウ」をクリック。(下図 2)
      ウォッチウィンドウを表示。
      ウォッチウィンドウを表示。
    3. VBE の右下のエリアにウォッチウィンドウが表示されると思います。
  4. ウォッチ式を入力します。
    1. ウォッチウィンドウの余白で右クリック。(下図 1)
    2. 「ウォッチ式の追加」をクリック。(下図 2)
      ウォッチ式追加。
      ウォッチ式追加。
  5. ウォッチ式を編集します。変数「a」の値が「5」になった時にマクロを中断してみます。
    1. 「a=5」と入力。(下図 1)
    2. 「ウォッチ式使用」「Module1」を選択。(下図 2)
      プロシージャ、モジュールは、マクロ名とマクロを書いた場所の正式名称のようです。
    3. 「式が True の時に中断」を選択(下図 3)
      ウォッチ式編集。
      ウォッチ式編集。
    4. 「OK」ボタンをクリック。
    5. 「ウォッチウィンドウ」にウォッチ式が追加されました。
      追加されたウォッチ式。
      追加されたウォッチ式。
  6. マクロ「ウォッチ式使用」を実行します。
  7. マクロが中断しました。
    マクロが中断している。
    マクロが中断している。

    「イミディエイト」ウィンドウは以下のようになりました。

    「4」まで出力されている。
    「4」まで出力されている。

    「ローカル」ウィンドウは以下のようになりました。

    「a=5」で一時停止している。
    「a=5」で一時停止している。

その他、ウォッチ式の例です。関数も使用可能なようです。

ウォッチ式 中断時の「a」の値
a>5 6
a+1=6 5
a-1=6 7
Len(a)>1 10

テスト環境

  • Windows 10(64 ビット)
  • Microsoft Office Excel 2003

    watch (ウォッチ)の英語の意味をインターネットの辞書で調べてみると、「見る」「見張る」という意味が出てきました。文字通りの機能ですね。

    以上、閲覧ありがとうございました。

    目次まで戻る

    同じカテゴリの投稿(Excel VBA)

    前後の投稿