マクロの記録 | ExcelVBA(マクロ)入門

マクロとは、エクセルの作業を自動化することをいいます。

具体的には[新しいマクロの記録]をクリックしてから、[記録終了]をクリックするまでの作業を記録して、名前をつけておいて、あとでそれを呼び出します。

ある程度エクセルに精通した方なら、すでに使ったことがあるかも知れません。エクセルの通常の機能を網羅した書籍にはよく紹介されていますし、資格試験にも上級レベルなら出てくることがあります。

とりあえず、やってみましょう。

  1. 新規シートを開いて下さい。
  2. 次に、[ツール] → [マクロ] → [新しいマクロの記録]をクリックして下さい。
  3. <マクロの記録>ウィンドウが表示されます。[OK]ボタンを押して下さい。
  4. セルA1に”マクロ”と入力して下さい。
  5. [ツール] → [マクロ] → [記録終了]をクリックして下さい。

これでマクロが登録されました。

では呼び出して使用してみましょう。シートのセルをどこでも良いので選択してください。

そして

  1. [ツール] → [マクロ] → [マクロ]をクリックして下さい。
  2. <マクロ>ウィンドウが表示されます。いま作ったマクロの名前は”Macro1”のはずです。これを選択して下さい。
  3. 同じく<マクロ>ウィンドウの右側にある、[]ボタンを押して下さい。

選択したセルに”マクロ”と入力されたはずです。

これがマクロです。

マクロとVBA

マクロとは、前述の通り、作業を自動化する機能のことです。これはエクセルに限らず、ある種のソフトウェアには組込まれている機能です。エクセル固有ではありません。

VBAとは、エクセルのマクロで使用されるプログラミング言語のことです。これはエクセル(というかマイクロソフトオフィス)で固有のものです。いきなりプログラミング言語などというむつかしい言葉が出てきましたが、要するに、エクセルは記録した手順をVBAというプログラミング言語に翻訳して記録しているのです。

たとえば、セルA1を選択するVBAは、
「Range("A1").Select」
です。英語っぽいのでなんとなくわかるでしょう。

セルA1の値をクリアするにはこうです。
「Range("A1").Clear」。
やはり、英語っぽいです。

基本的にはこういった文を連ねて、ひとつのプログラムとしていきます。

”マクロの記録”機能とVBAの違い

決定的に違うのは、マクロでは条件分岐ができない、ということです。またまたむつかしい言葉がでてきましたが、要するに、セルA1の値が10以上ならセルB1に”多い”と表示し、10未満なら”少ない”と表示するような機能です。

IF関数とか条件付き書式と似たものですが、それらのもっと複雑なことができる機能です。

もうひとつあげるとすると、VBAではプログラミングらしく、自分で独自のウィンドウを作成することができます。テキストボックスを作っておいて、ボタンを押すと、そこに入力された文字をセルに挿入する、などといったことができます。
もちろん、ラジオボタンやリストボックス(プルダウンメニュー)とかタブとか、いろいろなことができます。

これができるようになると、プログラミングっぽくなって、とても楽しくなってきます。

記録されたマクロのVBAコードを読む

前述の通り、マクロはVBAというプログラミング言語で記録されています。これはそのブックの内部に保管されています。

 

最終更新:2010年09月12日 01:17
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。