違いを解説君

あるゆる物事の"違い"をわかりやすく解説する情報マガジン

Java コトリン 違い

ITの違い

マクロとVBAの違いをわかりやすく解説!言葉の定義と使い分け方

あなたは、『マクロ』と『VBA』の違いについて明確に分かりますか?

 

はなこ
Excelに『マクロ』機能が付いているでしょ?

『マクロ』記録すると『VBA』が記録されるじゃない。

『マクロ』と『VBA』は同じものと考えていいのかな?

どうだろう、厳密には違うような気がするんだけどな。

何が違うのか、考えたことはないな。

たろう
はなこ
『マクロ』と『VBA』の違いについて、調べてみたいわね。

 

今回は、『マクロ』と『VBA』の言葉の定義からその違いを解説し、使い分け方について見てみましょう。

スポンサーリンク

『マクロ』と『VBA』の定義

まずは、『マクロ』と『VBA』の定義について見てみましょう。

『マクロ』とは?

アプリケーションソフトウェアの操作など、プログラミング言語よりも大まかな操作を自動化する機能

のことです。

 

例えば、

『画像編集ツールを使って、画像の端に枠線を付け、幅のサイズをそろえる操作をしたい』

としましょう。

その画像が10個あったとき、ひとつひとつ画像を読み込んで枠線を描き、幅のサイズが同じになるように拡大・縮小する操作を行うのは大変ですよね。

10個ならなんとかなるかも知れません。

でも、これが100個の画像となると、膨大な時間がかかるでしょう。

そこで、枠線を端に描く処理と、幅をそろえる処理をまとめて、一気にできるようになると便利ですよね。

そのような処理を実現するのがマクロの役割になります。

同じ操作を繰り返さなければならない時、その操作をマクロ記録しておき、残りについてはそのマクロを実行させるわけです。

このような処理は、アプリケーションに限らずプログラミング言語にも登場します。

例えば、C言語のマクロ機能では、複数の処理をひとつのマクロにまとめ、コンパイル前に展開するようなことができます。

なので、マクロはExcelなどに限らず、一般的に使われる機能であるということですね。

 

『VBA』とは?

『Visual Basic for Application』の略で、ExcelなどのMicrosoft Office製品に搭載されたプログラミング言語

のことです。

『Visual Basic』と言えば、Microsoftが販売しているプログラミング言語ですね。

『Visual Basic for Application』とは、ExcelなどのMicrosoft Office製品での利用に特化した『Visual Basic』です。

例えば、Excelのセルの書式設定や、グラフの描画などを行うための命令が追加されており、プログラムを使って様々な処理が自動化できるわけです。

 

はなこ
『マクロ』は一般的な用語、『VBA』はMicrosoftの製品に限定した用語ということね。
Excelでも『マクロ』が使えるけど、その『マクロ』を記述する言語が『VBA』だと考えればいいんだね。
たろう

 

『マクロ』と『VBA』の違い

『マクロ』と『VBA』の定義から、それぞれの違いが分かります。

『マクロ』と『VBA』の主な違いは次のようになります。

『マクロ』と『VBA』の違い

  • 『マクロ』は様々な言語やアプリケーションにある機能であるが、『VBA』はMicrosoft Office製品だけにある機能である。
  • 『マクロ』は操作を自動化する機能を表し、『VBA』は『マクロ』を実現するための言語である。

『マクロ』は、様々な言語やアプリケーションに備わっている機能です。

Microsoft Officeだけではなく、もっと幅広い製品などに組み込まれています。

しかし、

『VBA』は、Microsoft Officeだけに備わっている『マクロ』の一種です。

『マクロ』の仲間のひとつとして『VBA』が含まれていると考えれば分かりやすいでしょう。

 

ExcelなどのMicrosoft Office製品には、『マクロ』を記録するためのメニューがあります。

これを使うと、操作を記録して同じ内容を繰り返し実行することができます。

まさに、『マクロ』の定義そのものですよね。

この記録した『マクロ』ですが、Visual Basic Editorという機能を呼び出すとその中身を見ることができます。

その内容が『VBA』で記述されています。

つまり、

Microsoft Office製品で『マクロ』を記述するための言語が『VBA』である

と考えることもできますね。

 

『マクロ』と『VBA』の使い分け方

Excel

Excel

ここでは、Excelで『マクロ』と『VBA』を使い分ける方法について見てみましょう。

Excelで、メニューから『マクロの記録』を選択すると、操作手順の記録が始まります。

その後は、記録したい操作を順番に実行します。

例えば、セルの書式設定で文字を太字に変え、セルの色を黄色にしたとします。

記録したい操作を終えたら、停止ボタンを押せば、マクロの記録が完了します。

記録したマクロを実行したいときは、『マクロの実行』をメニューから選択します。

そうすると、好きなセルの文字が太字になり、セルの色が黄色になることが確認できます。

 

記録した『マクロ』を見たいときは、Visual Basic Editorを開きます。

すると、『VBA』で記述された『マクロ』の内容を見ることができます。

この『VBA』は直接編集することが可能です。

ですから、セルの文字を斜体にしたり、文字の色を赤色に変えたりといった処理を追加することもできます。

 

『VBA』にある様々な命令に詳しい人は、直接Visual Basic Editor上で『VBA』を記述して『マクロ』を作成することもできます。

しかし、誰もが『VBA』に詳しいとは限りませんよね。

あまり詳しくない人でも『マクロ』が簡単に作成できるように、『マクロの記録』が用意されているわけです。

ですから、使い分け方としては

『VBA』に詳しい人は直接『マクロ』を記述

『VBA』に詳しくない人は『マクロの記録』を利用

という形になるでしょう。

スポンサーリンク

まとめ

今回の違いのポイントについて、まとめていきましょう。

ポイント

  • 『マクロ』とは、アプリケーションソフトウェアの操作など、プログラミング言語よりも大まかな操作を自動化する機能のことである。
  • 『VBA』とは、『Visual Basic for Application』の略で、ExcelなどのMicrosoft Office製品に搭載されたプログラミング言語のことである。
  • 『マクロ』は様々な言語やアプリケーションにある機能であるが、『VBA』はMicrosoft Office製品だけにある機能である。
  • 『マクロ』は操作を自動化する機能を表し、『VBA』は『マクロ』を実現するための言語である。
  • 『VBA』に詳しい人は直接『マクロ』を記述し、『VBA』に詳しくない人は『マクロの記録』を利用するのが、正しい使い分け方である。

『VBA』は、様々な処理が可能になる強力な機能です。

ぜひ一度利用してみてください。

関連記事

-ITの違い

Copyright © 違いを解説君 , All Rights Reserved.