こんにちは~。「デザインもできるシステムエンジニア」のあつもり(@atumori17)です。今回も業務効率化のアイデアやエクセルVBAなどのテクニックを発信していきます。
前回はステップインなどの基本的なデバックメニューを紹介しました。
今回はエクセルVBAのローカルウィンドウで変数の値を見ながらデバッグする方法を紹介します。
特にエクセルVBA初心者がデバッグを行う上でとても役に立つ便利な機能です。
ローカルウィンドウとは
ローカルウィンドウとはプロシージャ内で使われている変数を全て表示してくれるウィンドウです。
デバッグ時に変数にどんな値が入ったのかなどの動きがわかるためとっても便利です。VBA初心者がプログラムの動きの理解を深めるのにも役に立ちます。
デバッグ時に変数の上にカーソルを持っていくと、変数の値が見れるのは知っている人も多いかと思います。
ただこの方法だと知りたい変数の上にその都度、カーソルを持っていかなければならないので、とても効率が悪いですよね。
それだったらすべての変数を一覧で表示させちゃおう!というのがローカルウィンドウの役割というわけです。
ローカルウィンドウを表示させる
ローカルウィンドウの役割がわかったところで、さっそく表示させてみましょう。
ローカルウィンドウを表示させるにはメニューの「表示」から「ローカルウィンドウ」をクリックします。
するとコードウィンドウの下にローカルウィンドウが表示されます。
デバッグしてみる
ローカルウィンドウを表示できましたので、ブレークポイントを置いてデバッグしてみます。このプログラムは行番号に10を掛けた数字をセルに入力するプログラムです。
ステップ実行を開始するとローカルウィンドウに変数の一覧が表示されます。
ローカルウィンドウの一番上に現在実行中のプロシージャ名が表示されます。ここではPutNumberが表示されていますね。
そしてその下に
- 変数名
- 変数に入っている値
- 変数の型
が表示されます。
変数の値はステップ実行を進めていくと変化していきます。
For y = 1 To 10
処理・・・・
Next y
のところではyは10回ループしますから、yの値は1から10まで変化していきますよね。
ステップ実行を進めていき、別ノプロシージャに処理が移った場合、ローカルウィンドウで表示される変数は、プロシージャ内で使われている変数に変わります。
ここではFunction AddNumberで使われている変数だけが表示されていますね。
変数の中身を見る方法は、さきほど説明したように、変数の上にカーソルを持って行ったり、イミディエイトウィンドウやウォッチウィンドウを使ってもできます。
しかし効率が悪かったり、変数の登録が必要だったりするので、ローカルウィンドウを使うのが一番簡単で手っ取り早い方法です。
ただしローカルウィンドウを使うと全ての変数が表示されてしまうので、見づらいことがあるかもしれません。でも何も見えないより全然ましですよね~。
まとめ
いかがでしたか?今回はエクセルVBAのローカルウィンドウで変数の値を見ながらデバッグする方法を紹介しました。
ローカルウィンドウを使うとプログラムの動きへの理解が深まるので、まだ使ったことがない人や初心者のかたは試してみてください。
その使い方だと損してます!
会社員、個人事業主のかたへ。
無料で登録できるAmazonビジネスアカウントを知ってますか?
何と言っても便利なのが請求書払いによる後払いができるということ。
また、承認ルールを作成すれば、業務上必要な物だけに購入を制限することができます。
さらに多くの商品にビジネスアカウント価格が設定されており、個人アカウントより安く購入できます。
このように個人アカウントと比べてビジネスアカウントはお得な機能や特典がついています。
無料で登録できるので、会社員、個人事業主なら使ったほうが得なのは言うまでもありません。