このページの内容について
このページは、VBAエキスパート(ExcelVBAベーシック)試験合格講座の第十一回記事です。公式テキスト第3章「モジュールとプロシージャ」と第10章「マクロの実行」の内容について解説します。自分でも手を動かしながら読み進めてください。
マクロの実行オプション
コンパイラ言語とインタプリタ言語
プログラミングでは人間とコンピュータの中間の言語であるプログラミング言語を使用してコードを記述しますが、コンピュータはこのままではプログラムを実行することができません。実行前に必ず機械語に翻訳されて実行されます。プログラミング言語は、この翻訳のタイミングによってコンパイラ言語とインタプリタ言語に分類できます。
コンパイラ言語
すべてのコードを翻訳してからプログラムが実行されます。別名「一括翻訳型」。C言語やJavaなどが該当します。事前に翻訳を済ませてから実行するため、後述する逐次翻訳型と比べて処理が高速であるという特徴があります。
インタプリタ言語
プログラムを翻訳しながら実行します。別名「逐次翻訳型」。VBAはインタプリタ言語に分類されます。そのためVBAではプログラムを1行ずつ実行したり、プログラムの実行中に動作を停止させたり、マウスのドラッグ&ドロップで実行場所を変更することもできます。
マクロを1行ずつ実行する
実行したいプロシージャ(マクロ)にカーソルを合わせて「F5」を押すと、プログラムが最初から最後まで実行されますが、代わりに「F8」を押すと1行だけ実行されます。続けて「F8」を押すことで、その次の行が実行されます。
マクロを実行中に停止させる・実行場所を変える
ブレイクポイントを設定する
プログラムの実行中に停止するポイントを設定することができます。停止させたい行にカーソルを合わせて「F9」を押すか、欄外の枠をクリックすると茶色いラインになります(書式変更していなければ)。

マクロを実行してみる
上記の状態でコードを実行すると、茶色くなっている行の一つ上の行まで処理が実行されマクロが停止されます。

黄色い矢印をドラッグ&ドロップで移動させる
黄色い矢印をドラッグ&ドロップで移動させると実行位置が変更できます。この状態で「F5」を押すとまた、茶色いラインで停止します。

Comment