マクロの仕組みや内容を理解する
マクロのコードを修正したり使いまわせるようにマクロの内容を理解する
マクロ講座 12回Excel2010
マクロの内容を理解する
ステートメント~マクロの内容を理解する
マクロは、「ステートメント」と呼ばれる命令文の集まりです。
ステートメントとは、「セルB1を選択する」といった内容を表す、1つの完結した命令文です。
VBEのコードウィンドウでは、原則として「改行」で区切られた1行1行がステートメントです。
マクロの開始と終了を表す特別なステートメント以外の
ステートメント= マクロの命令は単純な2つの構文から構成されます。
一つ目は、「対象.属性=値」構文
2つ目は、「対象.動作」構文
では、もう少し具体的に見て行きましょう。
最初は、Subステートメント マクロの開始位置を表します。
次は、コメント
マクロの実行に影響を与えない説明文が記載されます。
その下の空白行は、見やすくするための空行
その下は、またコメント行
行頭の空白は、読みやすいように挿入されています。
マクロの実行に影響はありません。
最初は、Subステートメント マクロの開始位置を表します。
次は、コメント
マクロの実行に影響を与えない説明文が記載されます。
その下の空白行は、見やすくするための空行
その下は、またコメント行
行頭の空白は、読みやすいように挿入されています。
マクロの実行に影響はありません。
1から6番までがそれぞれステートメントです。
一見して6番は見た目が違いますね。
これは、ブロックといい、複数のステートメントの集まりでまとまった機能をもつ範囲です。
それぞれの内容は、
1は、セルB2を選択
2は、1月と入力
3は、文字列のフリガナを記録
4は、オートフィルの実行
5は、セル範囲の選択
6は、背景色の設定
一見して6番は見た目が違いますね。
これは、ブロックといい、複数のステートメントの集まりでまとまった機能をもつ範囲です。
それぞれの内容は、
1は、セルB2を選択
2は、1月と入力
3は、文字列のフリガナを記録
4は、オートフィルの実行
5は、セル範囲の選択
6は、背景色の設定
4の行末には行継続文字(半角スペース+「_」)がついています。
この行は、内容が次の行に継続している判断されます。
つまり、次の行は独立のステートメントとはみなされません。
この行は、内容が次の行に継続している判断されます。
つまり、次の行は独立のステートメントとはみなされません。
Subプロシージャとは
Subプロシージャとは、VBAの一連の処理をまとめて名前をつけたもので、Excelでいう「マクロ」とほぼ同じ意味と考えることができます。
プログラム側からマクロを見たときに、Subプロシージャと呼ぶのだという理解で良いでしょう。
記録機能で作成されたマクロは、Subプロシージャとして標準モジュールに記述されます。また、記録時に設定する「マクロ名」はそのままSubプロシージャ名になります。
Subプロシージャは、
「Subマクロ名()」という行で始まり、「End Sub」という行で終わる一連のコードです。
実際の処理はこの2行の間に記述されます。
プログラム側からマクロを見たときに、Subプロシージャと呼ぶのだという理解で良いでしょう。
記録機能で作成されたマクロは、Subプロシージャとして標準モジュールに記述されます。また、記録時に設定する「マクロ名」はそのままSubプロシージャ名になります。
Subプロシージャは、
「Subマクロ名()」という行で始まり、「End Sub」という行で終わる一連のコードです。
実際の処理はこの2行の間に記述されます。