【エクセルVBA】VBAとマクロの違いは?

エクセルVBAを勉強していると、

  • VBA
  • マクロ

という言葉が出てきます。

この2つの言葉が「同じもの」なのか「違うもの」なのか、悩ましくないでしょうか?

 

結論としては、(少なくともエクセルVBAを使っているだけであれば)「VBA」と「マクロ」は、結果として同一のものを指すことも多く、両者を厳格に区別する必要性は、高くありません

ただし、厳密にはこの2つの言葉の意味は違います。

どう違うのか、そのニュアンスを知っておくと便利な場面もあると思いますので、簡単に説明をしようと思います。

マクロ=手順書

マクロとは

特定の作業をするための処理手順を(何らかの言葉で)記述して、実行できる状態になっているもの

をいいます。

マクロは「実行可能なプログラム」のことといったほうがわかりやすいかもしれません。

 

「対人間の仕事」に置きかえれば、マクロは、

  • 「他の人に作業をお願いするときの作業手順書

にあたるものといえます。

VBA=言葉

VBAは「処理手順を記述するための言葉」です。

「対人間の仕事」に置き換えると、VBAは、

  • 他の人に作業をお願いするときの作業手順書を「作るときに使う言葉

ともいえます。

 

たとえば、

  • 相手が日本人のときは、作業手順書を日本語で書く
  • 相手がアメリカ人のときは、作業手順書を英語で書く

のと同じように、

  • 相手がエクセルのときは、マクロをVBAで書く

というイメージです。

VBAとマクロの関係

上で説明したことをまとめると、VBAとマクロの関係がわかります。

要は、VBAとマクロは、
「VBA」という言語で処理手順を書いたものが「マクロ」
という関係にあるのです。

 

このように、この2つの言葉は、厳密には別の意味を持っています。

ただ、「VBAで作ったマクロ」について話をするときには、「VBA」や「マクロ」という言葉は、ほとんどの場合(裏から見ているか、表から見ているかが違うだけで)同じものを指します

ですから、基本的には、どちらの言葉を使っても支障はありません。

ときどき、

  • 手作業でプログラムを組んだもの=VBA
  • 自動記録したもの=マクロ

と説明されることがありますが、このように両者を区別する説明は正確ではありません

手作業、自動記録と作成する手段は違っても、両方とも「VBAで記述したマクロ」という意味で一緒のものなのです。

 

もし、「VBA」と「マクロ」という言葉を厳密に使い分けるとすれば、

  • 作成「手段」から見るときは「VBA」
  • できあがった「結果」から見るときは「マクロ」

という観点で、使い分けられることが多いと思います。
 

実際の使い分け方の例

作成「手段」から見るときは「VBA」を使う
  • VBAのソースコード
  • VBAのエディタ
できあがった「結果」から見るときは「マクロ」を使う
  • マクロの実行
  • マクロの記録

ただ、上のVBAとマクロを入れ替えて、

  • マクロのソースコード
  • マクロのエディタ
  • VBAの実行
  • VBAの記録

と表現しても、(若干違和感を感じるかもしれませんが)意味は通じると思います。

ですから、あまりVBAとマクロの使い分けに神経質になりすぎる必要はないと思います。

また、他の人の文章を読むときも、VBAとマクロは、同じものだと思っておいて、ほとんど間違いはないでしょう。

 

私自身は、読む人に「VBAなのかマクロなのかどっち?」と悩んで欲しくないので「VBAマクロ」と表現することが多いです。

おすすめ記事

エクセル基礎講座 「無料」動画マニュアル

「経理事務のためのエクセル基礎講座(初級編)」(動画マニュアル 総収録時間162分)を無料プレゼント中です!

このマニュアルで解説していることを一通り学べば、経理事務を行う上で最低限必要となる知識が得られます。

ご登録者の方には、合わせて、公認会計士が実体験を通して身に付けたエクセルを使う技をメールにてお伝えしていきます!

無料動画講座 登録フォーム

※ご登録頂いたメールアドレスに、エクセルを使いこなすための情報を配信するメールセミナー「エクセル倍速講座」も合わせて配信させていただきます。