「イミディエイト」という言葉をきいたことがありますか?
あまり日常生活でつかうことのない単語かとおもいますが、「直接の」や「即時の」といった意味があります。
VBEの機能のひとつに「イミディエイト ウィンドウ」というものがあります。今回はこの使い方をご紹介します。
設定方法
さっそく「イミディエイト ウィンドウ」の表示をしておきましょう。
- VBEをひらく
- 「表示」を選択する
- 「イミディエイト ウィンドウ」をクリックする
もしくは、こちら。
- VBEをひらく
- 「ctrl」+「G」の同時押し
以下の黒い部分が「イミディエイト ウィンドウ」です。(わたしが個人的な理由で設定変更しているため黒色になっていますが、初期設定では白く表示されると思います。)
使い方
それでは具体例をつかって使い方をご説明します。
直接入力する場合
「こんな書き方であってるかな?」
コードを記述しているときに誰しもそんな疑問を感じながら書くことがあります(少なくとも私の場合はそうです)。
そんなときには「イミディエイト ウィンドウ」を使いましょう。
こちらのコードを試してみましょう。「イミディエイト ウィンドウ」に記述します。
Range("A1").Value = 20
入力後「Enter」を押します。
ワークシートはこのようになります。
とても小さな単位でコードのテストができます。
ちなみに、間違っていた場合はこちら。
Range("A1").Valu = 20
入力後「Enter」を押します。
このようなエラーがでます。
結果を確認する場合
「変数ってこれでいいのかな?」
こんなときにも「イミディエイト ウィンドウ」を使います。
こちらのワークシートをつかって確認をしてみましょう。
こちらのコードを「イミディエイト ウィンドウ」に入力します。
last_row = cells(1,1).end(xldown) ?last_row
「Enter」を押します。
ほしい結果の直前に記号の「?」を入力してくださいね。
結果はこちらです。3行目に「5」と出力されていることが確認できます。
このような結果を参考にして「変数」の定義をすすめます。
その他の方法
「どうもイミディエイト ウィンドウになじめない。」といった場合はこちらはいかがでしょうか。
関数の「メッセージボックス」をつかって確認をする方法です。
たとえば、このような使い方です。
Sub test() Dim i As Long For i = 1 To 5 Cells(i, 1).Select MsgBox (Cells(i, 1).Value) Next End Sub
実行結果がこちらです。
「いまどのセルを選択しているか」がメッセージボックスで表示されます。
これも意外と便利ですので、一度お試しください。
まとめ
今回は「イミディエイト ウィンドウ」の使い方についてご説明をしました。
独学者にはとてもありがたい機能ですね。
コードをつかって狙った値を取得するのって慣れないうちは意外とむずかしいです。そんなときは、小さなパーツをひとつずつ作ってみることが一番の近道だったりします。
今回ご紹介した方法をつかいながら、少しずつ調整を繰り返していきましょう。
何度もやっているうちに自分が間違えやすいポイントも見えてきます。