【所要時間5分】初めてのエクセルVBA-マクロを作って実行する
このページでは、初めてVBAでマクロを組む人向けに、VBAのマクロを動かすまでの一番簡単な手順を紹介しようと思います。
初めてマクロを動かそうと思ったときには、まずは、どんなマクロでもいいので「とにかく1回プログラムを作って動かす」ことが大事です。
最初に試すまでは、すごくハードルが高く感じるかもしれません。
でも、1回でも実行してみれば、かなり簡単にマクロが作れることがわかると思います。
この記事の目次
今回作るマクロ
今回は、実行すると、A1セルに「1」と表示するマクロを作成、実行してみます。
作業手順
1. エクセルを起動する
通常通りエクセルを起動します。

2. VBAのエディタを起動する
Alt + F11を押すと、Visual Basic Editorが起動します。
Altを押しながらF11を押すことに注意してください。
F11キーは、キーボード最上段の右側にあります。
3. ソースコードの入力画面(標準モジュール)を表示させる
画面上のメニューから「挿入」→「標準モジュール」を選ぶと、ソースコードの入力画面が表示されます。

環境によっては、「Option Explicit」という行が表示されないかもしれません。
表示されなくても問題ありませんので、そのまま先に進んでください。
4. ソースコードの入力をする その1
先ほど表示された入力欄に、次の文字を入力してEnterキーを押してください。
少し細かく書くと、
s、u、b、Space、t、e、s、t、Enter
と入力します。
すると、エディタにより自動的に入力した文字が整形されて、次のように表示されます。

5. ソースコードの入力をする その2
「4.」の入力後「Sub test()」~「End Sub」の間の行に入力できる状態になっています。
そこで、次の文字を入力してEnterキーを押してください。
※先頭にスペースが入っていることに注意してください
少し細かく書くと、
Space、r、a、n、g、e、Shift+8、Shift+2、a、1、Shift+2、Shift+9、Shift+-、1、Enter
と入力します。
すると、エディタが自動的に入力した文字を整形して、次のように表示されます。

これで、マクロの作成は完了です。
「Range("a1")」の「a1」の部分は、「Range("A1")」と大文字で書いても問題ありません(むしろ、「大文字」を使うほうが普通かもしれません)。
セル番号を小文字で入れるのは気持ち悪い、というときは大文字で入力してみてください。
6. できあがったマクロを実行する
入力欄が「Range("a1") = 1」のすぐ下の行にあることを確認して、F5を押します。
すると、マクロが実行されます。
※F5キーは、キーボード最上段の真ん中からやや左寄りにあると思います
速すぎてわからないかもしれませんが、マクロ実行時に一瞬だけ次のような変化が起きています。
- マウスカーソルが砂時計マークになる
- ウィンドウタイトルの表示が変わる
万一、このような変化がわからなくても、F5キーを押した時点でマクロは実行されていますので、次のステップに進んでください。
マクロ実行後、元々のエクセルシートの表示画面にもどると、A1セルに「1」と入力されています。

これで、マクロの実行が完了しました。
解説
プログラムの簡単な解説をします。
Sub test()
Range("a1") = 1
End Sub
Sub~End Subが1つのまとまり
「Sub」と「End Sub」で囲まれた部分をSubプロシージャと呼びます。
マクロとして実行したい作業をこのSubプロシージャの中に書きましょう。
Subプロシージャの書式は次のとおりです。
...
End Sub
今回は、「プロシージャ名」の部分に「Test」が入っているので、このSubプロシージャには「test」という名前が付けられていることがわかります。
Range("a1") = 1で、セルに値を代入
「Range("a1") = 1」という文は、「A1セルに1を入れる」という意味を表しています。
文字の雰囲気から、なんとなく理解できますよね?
もちろん、「a1」「1」の部分を変えれば、「どのセルに何を入れるか」を変化させることができます。
興味があれば、試してみてください。
次の記事はこちら↓