みなさん、おはようございます!タカハシ(@ntakahashi0505)です。
こちらの記事は、タカハシが音声メディアVoicyの「スキルアップラジオ」にて放送した内容から、ピックアップしてお届けします!
今回のテーマは、今さら聞いてもいいIT用語 #19 「マクロ」 です。
なお、以下で実際にお聴きいただくこともできます!
では、よろしくお願いいたします!
マクロとVBAの違いとは
今日紹介するIT用語はマクロになります。
ExcelVBAで作ることが多いので、マクロとはVBAのことだ。
このように勘違いしている人もいるんですが、ちょっとニュアンスとしては違う言葉なんです。
なので、今日はマクロという言葉についてきちんと解説をしていければと思います。
Microsoftの説明
では、本家本元Microsoftさんの解説を見てみましょう。
Microsoftの説明を見ると、こういう風に書かれていました。
マクロは、タスクの実行を自動化するための単独の操作または複数の操作です。
こんな風に書いてあったんですが、ちょっと意味がわかりませんよね。
残念ながら、Microsoftさんのドキュメント、英語を無理やり日本語に翻訳しているケースがありまして、こういうよくわからないってことが結構あったりするんです。
ChatGPTの説明
それこそAIの力でなんとか改善をしていただきたい、そんな風に思います。
では、そのAIの力を借りてみましょう。
ChatGPTに聞いてみると、こんな回答でした。
複数の手続きやコマンドを1つにまとめ、単一の操作やコマンドとして実行できるようにするための手段を指します。
かなり良い解説が出てきました。
たとえば、ExcelでAというシートからある条件に従ったデータのみを抽出してコピー、そしてBというシートにペーストする、こういった作業があったとします。
それぞれのデータについて条件判断してコピーしてペーストする、それをデータの数だけ行うわけです。
つまり、複数の手続きがここでは発生します。
それをぐるっとまとめてボタンクリック1つで完了させるようにする。
このような手段や、もしくはそれで完成したもの、それをマクロというんです。
マクロとは大きな命令
マクロという言葉なんですが、もともとは形容詞なんです。
大きいという意味があります。
たとえば、日本語でも、マクロな視点とか、マクロ経済とか言いますよね。
それで、IT用語で使われているマクロ、これも、もともとはマクロインストラクション、マクロ命令という言葉だったんです。
1つ1つの小さな命令をまとめて大きくする、それを1つの操作や命令で実行できるようにする、だからマクロ命令だったんです。
しかし、使っているうちにマクロ命令の命令のところをはしょって喋るようになって、マクロという言葉だけ使うようになった、このような経緯だそうです。
マクロとは大きな命令である、このように考えると、VBAと何が違うのかということがかなりくっきりしてきます。
VBAはプログラミング言語
VBAというのは何かと言うと、プログラミング言語なんです。
ExcelをはじめとしたMicrosoft社製品を操作することが得意な、そういったプログラミング言語になります。
ですから、VBAというプログラミング言語のルールに則ってコードを組むことでマクロを作るわけです。
作られたマクロは、プログラミング言語VBAを使って記述されています。
VBAとマクロが同じ意味だったとすると、「マクロでコードを組む」みたいな言葉も言えるですが、これはかなりおかしな表現になっています。
この辺りの言葉の意味と使い方、用途の違いについて掴んでいただければ嬉しいなと思います。
マクロの記録機能
Excelのマクロ記録
Excelで言うとマクロの記録という機能がありますよね。
マクロの記録をスタートした後にしている実際のExcelの操作、これをコンピューターが記録しておいてくれて、後で同じ操作を自動実行できるようにする。
このような強力な機能になっています。
手順をレコーディングしておいてくれるみたいな感じです。
そして、この記録されたマクロなんですが、中身を見ることができて、実際に中を覗いてみると、プログラミング言語VBAの命令で書かれているそれを確認することができます。
おそらく、Excelというアプリケーション、あまりにも多くの人が使っていて、そこでマクロの記録という機能を目にしているので、マクロと言えばExcel、マクロといえばVBA、こういったイメージを持っている方が多いのかなと思います。
Googleスプレッドシートのマクロ記録
しかし、マクロと言えばExcelにだけ使う、VBAで組むもの、そういったイメージがあるんですが、決してそうではないんです。
実際にGoogleスプレットシート、もし開ける方は開いてみていただければと思います。
メニューの中の拡張機能、これを開くと、マクロというのがありまして、マクロの記録とか管理、それを行うことができます。
これはExcelのマクロの記録と全く同じ機能になっていまして、記録を開始すると、停止するまでの実際のスプレットシートの手順、それを記録してくれます。
後で呼び出して、同じ操作を実行することができます。
さらに、記録されたマクロの中身、こちらでも見ることができまして、Google Apps Scriptというプログラミング言語で書かれているということを確認することができます。
このように、操作対象がExcelでなかったとしても、そのマクロを作る言語がVBAでなかったとしても、小さな命令を組み合わせて大きな命令として実行できるようにしたのであれば、それはマクロであるということになります。
まとめ
ということで、今日は今更聞いてもいいIT用語マクロについて紹介をさせていただきました。
マクロというのは、複数の手続きや命令、これを1つにまとめた大きな命令のことを指すんだということを理解いただければと思います。
また、Excel VBAの文脈で使われることが多いんですが、決してExcelとかVBA、その範囲の中だけで使う言葉ではないということも理解いただければ嬉しく思います。
そして、Excelとかスプレットシートとか、そういったルーチン作業を多く持っていらっしゃる方は、それを1つの手順で自動実行できるようになりますので、ぜひ機会を見てマクロにチャレンジしてみていただければと思います。
タカハシのVoicyの放送はこちらからお聴きいただけます。
チャンネルのフォロー、コメント、SNSでのシェアなどなど、楽しみにお待ちしております。 では、また。