条件に一致した時にマクロを中断できる VBE のウォッチ式。

執筆者:

カテゴリ:

,

目的

  • 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)
ウォッチウィンドウを表示。
ウォッチウィンドウを表示。
  • VBE の右下のエリアにウォッチウィンドウが表示されると思います。
  • ウォッチ式を入力します。
    1. ウォッチウィンドウの余白で右クリック。(下図 1)
    2. 「ウォッチ式の追加」をクリック。(下図 2)
  • ウォッチ式追加。
    ウォッチ式追加。
  • ウォッチ式を編集します。変数「a」の値が「5」になった時にマクロを中断してみます。
    1. 「a=5」と入力。(下図 1)
    2. 「ウォッチ式使用」「Module1」を選択。(下図 2)
      プロシージャ、モジュールは、マクロ名とマクロを書いた場所の正式名称のようです。
    3. 「式が True の時に中断」を選択(下図 3)
  • ウォッチ式編集。
    ウォッチ式編集。
  • 「OK」ボタンをクリック。
  • 「ウォッチウィンドウ」にウォッチ式が追加されました。
  • 追加されたウォッチ式。
    追加されたウォッチ式。
  • マクロ「ウォッチ式使用」を実行します。
  • マクロが中断しました。
  • マクロが中断している。
    マクロが中断している。

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

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

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

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

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

    ウォッチ式中断時の「a」の値
    a>56
    a+1=65
    a-1=67
    Len(a)>110

    テスト環境

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

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

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