[Alt] + [F11] にて、VBE画面を表示させることになれてきたら、次はこのショートカットキー [F5] と [F8] です。
VBEを使う方と話をするときに、かならず合い言葉のように出てくるのがこの二つのキーです。
それくらい、VBA使いに愛されているショートカットキーなんですね。
「[F5]と[F8]ですよねぇ。あ、やっぱり使っていますか?」みたいな親近感のわく会話を何度か交わしたことがあります。
さて、それぞれの機能をご紹介します。
[F5] プログラムの実行(最後まで)カーソルが置かれているプロシージャー(マクロプログラム)を最後まで実行します。
下図に赤い円で示した部分のボタンと同じ動きをします。
[F8] プログラムの実行(1行ずつ) → 「ステップイン」と呼ばれています。
こちらの場合、プログラムの1行ずつを実行できます。
プログラムが正常に動かないときに、どの行でエラーを起こしているのか確認するときに便利です。
また、プログラムがどのようにカーソルを移動させるのかを確認するときにも便利ですよね。
慣れないうちは、得てして、自分が想定していたようには動かないものです。
ひとつずつ指令の動きを確認するのは大切な学びのプロセスです。
メニューの[デバッグ] > [ステップイン] で同じ動作ができます。
たとえば、あるプログラムを選択します。
具体的にいうと、カーソルを選択したいプログラム(プロシージャー)のSub から End Subの間に位置させます。
その状態で、[F8]をおすと、そのプログラムのタイトルが蛍光ペンで着色されます。
さらに、[F8]をおすと、次の行に蛍光ペンの位置が移動します。
この場合には、実行するプログラムが書かれた行まで移動するので、下図のとおり、Set myRange...まで移動します。
Dim i as Long... と Dim myRange as Range... の行は、変数を定義しているだけなので、具体的に実行する内容はないので、これはスキップ。
また、'Rnageオブジェクトの設定 と書かれた行は、コメントを記入しただけなので、プログラムではないですね。
よって、以下のようになります。
なお、蛍光ペンで選択されている行は、まだ実行されていません。
次に[F8]を押して、蛍光ペンが次の行に移動したときに実行されます。
これは、プログラムを実行しながら体感してみてください。
このようにプログラムを実行することを「ステップモードで実行する」と呼びます。
デバッグ作業(プログラムのミスを修正する作業)で大活躍です。