マクロの構文:Excel2010

マクロの構文はシンプル

マクロは、聞きなれない用語が多くて、とても難しそうに感じるものです。ところがマクロの構文は意外なほどシンプルです。
だから用語は後回しにして、実践から入るのが良いのです。
ふだんエクセルで何度もする操作を記録して、自分用の3行マクロを作成しましょう。
難しいことは、だんだん理解できてくるものです。

マクロの構文を理解する

さて、前回宿題を出してありました。
「セルに1月と入力してから、オートフィルで6月まで入力して、さらにそれらのセルの色をブルーに変更する」マクロです。

このようなコードができているはずです。

マクロのはじめと終わりを示すステートメント

マクロの命令は、「Sub」ステートメントで始まり、「End Sub」ステートメントで終わることを覚えてください。
「Sub」に続けてマクロ名とカッコを書きます。
そして、「End Sub」との間に、操作の命令を書きます。
上図の緑のハイライト部分が命令の本体です。
命令は、1行で1つの操作を表す決まりです。

マクロの構文は2つだけ

マクロの命令は単純な2つの構文から構成されます。
一つ目は、「対象.属性=値」構文
2つ目は、「対象.動作」構文

よく見ると、1行ごとに、「対象.属性=値」構文なら、○○.□□=▼のように間にピリオドがあることに気づくと思います。
すべて対象にたいして、属性を指定したり、動作を指定したりしているわけです。
対象の後ろには、ピリオドがついて区切りになっています。

「Range」でセルを指定する

Range("B2").Select

Range」は、範囲という意味で、マクロでセルを指定する言葉です。
続くカッコ内には、セル番地を”ダブルクォーテーションで挟んで書けば、セル番地を表せます。
「Select」は、文字通り選択するという意味ですから、
Range("B2").Select
で、「B2セルを選択する」という意味になります。
これは、「対象.動作」構文です。
ActiveCell.FormulaR1C1 = "1月"

ActiveCell」は、選択しているセルを意味します。
FormulaR1C1は、現時点では、セルの内容と理解してください。
=の後ろは値です。
つまり、
選択しているセルの内容を="1月"と入力する

「対象.属性=値」構文ですね。
ちなみに、formulaを辞書で調べると、公式、方式、やり方などと出ています。