VBA入門
VBEの使い方:ローカル ウィンドウ

VBAの開発環境であるVBEの基本的な使い方
最終更新日:2021-10-13

VBEの使い方:ローカル ウィンドウ


VBE(Visual Basic Editor)は、VBAで使われるコードエディタ、コンパイラ、デバッガ、その他の開発支援ツールが統合された開発環境です。


ここではローカル ウィンドウの使い方について説明します。


ローカル ウィンドウの表示

メニュー「表示」→「ローカル ウィンドウ」

VBA VBEローカル ウィンドウ

初期設定では、コードウィンドウの下にドッキング表示されます。

VBA VBEローカル ウィンドウ


ローカル ウィンドウの基本的な使い方

VBA実行中に、プロシージャー内の変数の中身を確認できます。
イミィディエイトウィンドウとは違い、配列やオブジェクトのプロパティの値を一覧で見ることができます。

VBA実行中は、ローカル ウィンドウには自動的に参照可能な変数が全て表示されます。

VBA VBEローカル ウィンドウ


Stopステートメント
プロシージャの任意の場所で実行を中断できます。
Stopステートメントを使用することは、コード内にブレークポイントを設定することと似ています。

End とは異なり、
Stopステートメントは実行を中断しますが、変数等を解除することはなく、VBAの実行状態が維持されます。

このStop時点のローカル ウィンドウです。

VBA VBEローカル ウィンドウ

先頭は、モジュール名となっていて、モジュールレベル変数が入っています。
マクロ VBA ローカル ウィンドウをクリックすることで展開されます。
多段階にマクロ VBA ローカル ウィンドウが含まれている場合は、次々にクリック展開できます。

VBA VBEローカル ウィンドウ

オブジェクトは参照可能なプロパティを見ることができます。

VBA VBEローカル ウィンドウ

配列の中も一覧で見ることができます。

VBA VBEローカル ウィンドウ

変数名です。
変数に格納されている値です。
変数の型になります。
Variantの場合は、
Variant/実際に格納されているデータ型

Applicationを変数に入れれば、エクセルのすべてのオブジェクトを見ることができます。


VBA VBEローカル ウィンドウ

さすがに、Applicationからドリルダウンするのは大変ですが、
変数に入れれば、このように何でも見ることができます。

コレクションの要素は、Item 〇 と表示されます。

VBA VBEローカル ウィンドウ


ローカル ウィンドウの制限

他モジュールの変数はパブリック変数でも表示されません。
プロシージャーレベル変数でも、他のモジュールで定義されている変数は表示されません。
他モジュール定義のPublic変数の中を確認するには、
イミィディエイトウインドウまたはウォッチウィンドウを使ってください。

引数が必要なプロパティは表示されません。
オブジェクトの中の、引数が必要なプロパティは表示されません。
例えば、RangeのAddressプロパティは、引数があるので表示されません。

VBA VBEローカル ウィンドウ

同様にValueにも引数があるので表示されませんが、Value2は引数が無いので表示されています。
※引数が省略可能なものであっても、そのプロパティは表示されません。

VBA VBEローカル ウィンドウ

Valueの引数について
VBA VBEローカル ウィンドウ

引数のあるプロパティを見るには、
そのプロパィの値を変数に入れるか、イミィディエイトウィンドウを使ってください。


ローカル ウィンドウの最後に

イミィディエイト ウィンドウウォッチ ウインドウとともに、VBAデバッグでは必須と言える道具になります。

複数の変数を確認したいとか、配列やコレクションの中を見たい時には、
ウィンドウを開くだけで見ることができるので、とても簡単で便利な機能になります。




同じテーマ「マクロVBA入門」の記事

VBEの使い方:VBE画面の全体説明
VBEの使い方:ツールのオプション設定
VBEの使い方:ツールバー
VBEの使い方:右クリックメニューとヘルプ
VBEの使い方:ショートカットキーとコード編集
VBEの使い方:イミディエイト ウィンドウ
VBEの使い方:ローカル ウィンドウ
VBEの使い方:ウォッチ ウィンドウ
VBEの使い方:オブジェクト ブラウザー
VBEの使い方:デバッグ


新着記事NEW ・・・新着記事一覧を見る

構成比を合計しても100%にならないと言われた…|ツイッター出題回答 (2022-09-01)
一覧から複数条件(部分一致、範囲)に合致するデータを抽出する|ツイッター出題回答 (2022-08-30)
縦横スピルしないXLOOKUP代替(MATCH+INDEX,FILTER,CHOOSEROWS)|エクセル入門(2022-08-27)
IF関数の論理式で比較演算子を省略したCOUNT系関数を書くのは|ツイッター出題回答 (2022-08-23)
LAMBDA以降の新関数の使用例|エクセル入門(2022-08-22)
数珠順列(配置に条件付き)を全て出力する|ツイッター出題回答 (2022-08-20)
日付時刻のマイナス表示に対応する方法|ツイッター出題回答 (2022-08-17)
LAMBDA以降の新関数について|エクセル入門(2022-08-16)
条件付きの最大値と中央値("A"が2文字の条件)|ツイッター出題回答 (2022-08-14)
VBAマクロと操作対象データの分離について|ツイッター出題回答 (2022-08-11)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.Excelショートカットキー一覧|Excelリファレンス
7.並べ替え(Sort)|VBA入門
8.マクロって何?VBAって何?|VBA入門
9.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
10.エクセルVBAでのシート指定方法|VBA技術解説




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ