「vba ウォッチ式 配列」
「vba ウォッチウィンドウ 配列」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
VBA(Visual Basic for Applications)で、ウォッチウィンドウを使って配列の中身を確認するには、どのようなウォッチ式を書けばいいのか探している方による検索です。
ローカルウィンドウではダメですか?
まず確認したいのは、ローカルウィンドウではダメなのか?という点です。
例えば以下のマクロを実行して、
Dim arr(1 To 3) As String
arr(1) = "イ"
arr(2) = "ロ"
arr(3) = "ハ"
Stop
Stop文の箇所でステップ実行モードになった時点で、メニュー[表示]-[ローカルウィンドウ]から、ローカルウィンドウを表示してみてください。
上図のようにローカルウィンドウで、配列変数・arrの中身を確認することができます。
ローカルウィンドウなら、どんな式を書けばいいのか悩む必要もありません。ステップ実行するだけです。
配列の全要素の中身を確認するウォッチ式
配列の全要素の中身をウォッチウィンドウで確認する場合、どのようなウォッチ式を書けばいいのか、見ておきましょう。※arrという名前の配列の全要素を確認する例
プロシージャ内の配列変数・arrという文字列上で右クリック
↓
表示されたショートカットメニューから[ウォッチ式の追加]を選択
↓
[ウォッチ式の追加]ダイアログ-[式]欄に
「arr」と入力されていることを確認後[OK]ボタンを押す
上記の操作でウォッチ式を登録したあとに、ウォッチウィンドウを表示して、先のマクロをステップ実行すると下図のようになります。
ウォッチウィンドウに配列の中身が表示されています。
ですが、よく見るとこれは、式を書く必要のなかったローカルウィンドウと同じ結果が表示されているだけです。
ローカルウィンドウがもっとも初心者向け
VBE(Visual Basic Editor)には、デバッグ用のウィンドウが3つ用意されています。
- ローカルウィンドウ
- ウォッチウィンドウ
- イミディエイトウィンドウ
の3つです。
この3つの中で、初心者でもとりあえず使えるのが、ローカルウィンドウです。
ウォッチウィンドウやイミディエイトウィンドウは、何らかの式(コード)を書けなければ、使うことはできません。
「vba ウォッチ式 配列」
「vba ウォッチウィンドウ 配列」
という検索をなさった方は、どのような式を書けばいいのか苦労していらしていたのではないかと思うのです。
式の書き方がわからなければ、ウォッチウィンドウやイミディエイトウィンドウは、使いようがありません。
誰かが書いたコードをよくわからないままコピペしてマクロを作っているレベルの方には、使えないのです。
これに対してローカルウィンドウならば、ローカルウィンドウに表示するための式を書く必要がありません。ステップ実行中にすべての変数を表示してくれます。
意味がわからないままコピペでマクロを作っている方でも使えます。
ローカルウィンドウのほうが、ウォッチウィンドウやイミディエイトウィンドウよりも、初心者向けの機能です。
ローカルウィンドウがウォッチウィンドウより不便なケース
ローカルウィンドウで、全変数のデータを確認できる点が、デメリットになるケースもあります。
大量の変数が存在するような場合です。
すべての変数が表示されてしまうために、確認したい変数を探し辛くなるデメリットが存在します。
変数が大量に存在しているときに、その一部だけを確認するには、ローカルウィンドウよりも、ウォッチウィンドウのほうが便利です。
配列は大量の変数があるのと同じですから、配列の場合にも同じことがいえます。
要素数が多い配列の、最後のほうの要素の中身を確認する場合には、ウォッチウィンドウを使うほうが便利になります。
その具体例は、近日中に別記事としてご紹介します。(具体例を公開しました。2016-06-29)
まずはローカルウィンドウで配列の中身を確認する操作を試してみてください。
- Newer:関数もいいですけれど演算子も使いましょう
- Older:SaveAsメソッドの戻り値は?
Home » VBE(Visual Basic Editor) » ウォッチウィンドウやイミディエイトウィンドウよりローカルウィンドウのほうが初心者向け