Home » VBE(Visual Basic Editor) » ウォッチウィンドウとローカルウィンドウの違い

ウォッチウィンドウとローカルウィンドウの違い

VBAのコーディング時に利用するVBEには、

  • イミディエイトウィンドウ
  • ローカルウィンドウ
  • ウォッチウィンドウ

という、デバッグに使える3種類のウィンドウが用意されています。

この3つのうち、ローカルウィンドウとウォッチウィンドウが、どう違うのかよくわからないという方もいらっしゃるようです。

このサイト『インストラクターのネタ帳』のアクセスログでも
「ウォッチウィンドウとローカルウィンドウの違い」
といった検索キーワードを見かけます。

[スポンサードリンク]

ローカルウィンドウはウォッチウィンドウの機能限定版

一言で言えば、ローカルウィンドウはウォッチウィンドウの機能限定版です。

ローカルウィンドウでは、ローカル変数とモジュールレベル変数しか確認できませんが、ウォッチウィンドウでは変数ではない式も確認できます。

ただし、ウォッチウィンドウではウォッチ式の登録が必ず必要ですが、ローカルウィンドウでは登録の手間はありません。

この意味で拙著『いちばんやさしいExcel VBAの教本』では、初心者の方に向けてローカルウィンドウをおすすめしています。

またウォッチウィンドウでは、式の確認だけではなく、条件に応じて実行途中で中断するといったこともできます。

ウォッチウィンドウでは変数の確認にも登録が必要

ウォッチウィンドウでは、変数でもウォッチ式の登録が必要なことを確認しましょう。
Sub samp()
 Dim tmp
 tmp = ActiveCell.Value
 MsgBox tmp
End Sub

上記のようなSubプロシージャをショートカットキー[F8]でステップ実行を開始した時点で、ローカルウィンドウでは下図のように変数tmpが確認できる状態になります。

これに対しウォッチウィンドウでは登録していない限り、何も表示されません。

変数tmpをウォッチ式として登録してはじめて、下図のようにローカルウィンドウと似た状態になります。

ウォッチウィンドウなら式も確認できる

登録作業が必要な点が面倒ですが、ウォッチウィンドウでは、式も確認できます。
Sub samp2()
 MsgBox ActiveCell.Value
End Sub

上記のようなSubプロシージャの場合、ローカルウィンドウでは何も確認できませんが、ウォッチウィンドウなら「ActiveCell.Value」という式を登録すれば確認できます。

(上図はアクティブセルに 2018/11/05 という日付データが入力されている状態です)

最終更新日時:2018-11-08 10:58

[スポンサードリンク]

Home » VBE(Visual Basic Editor) » ウォッチウィンドウとローカルウィンドウの違い

「VBE(Visual Basic Editor)」の記事一覧

検索


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

.