Google スプレッドシートでマクロを使ってみよう!

はじめに

Googleのスプレッドシートでマクロが使用できるようになりました。本記事ではマクロの説明や活用方法をご紹介します。GASの知識は必要としませんので、初学者にもわかりやすくなっています。

マクロとは?

スプレッドシートにおけるマクロとは、スプレッドシート上で行う操作の内容を記録し、記録した操作を自動で実行する機能のことです。GoogleスプレッドシートはGoogle Apps Script(GAS)というJavaScriptをベースとしたスクリプトをもとに動いているため、GASの知識があれば以前から作業の自動化などを行えました。

なぜマクロを使うの?

データの並べ替えや抽出など繰り返し同じ操作をする場合は一連の操作をマクロとして記録することで、作業の大幅な効率化を図ることができます。今回導入されたマクロ機能はGASやプログラミングの知識がなくても、GoogleスプレッドシートはGoogleアカウントとインターネット環境があれば簡単に扱う事ができるようになっています。また、スプレッドシート以外にもGoogleが提供するサービスやほかのアプリケーションと連携しやすいことも大きな特徴です。

マクロの使い方 ~基本編~

基本的なマクロの設定方法についてご紹介します。まずマクロの記録をしてみましょう。”ツール”→”マクロ”→”マクロを記録”を選択してください。

「新しいマクロを記録しています」というメッセージが表示されています。これでマクロの記録が始まりました。

最初にセルの参照について選択します。

「絶対参照を使用」は実行時、記録したセルと同じセルで処理が適用されます。

「相対参照を使用」は実行時に選択されているセルに処理が適用されます。

セル内に数式を記述するときに「$」を使うイメージです。

今回はセルに文字を入力する操作を記録してみましょう。セルA1に「こんにちは」と入力してEnterキーを押すと「操作1:値を設定」と表示され、操作が記録されているのがわかります。セルへの文字入力が出来たら、適当な名前を付けて保存します。ここで、マクロごとに0~9の番号を設定することができます。

再びメニューから”ツール”→”マクロ”を選択すると、先ほど記録し保存したマクロが追加されていることがわかります。セルA1を空白にして、”ツール”からマクロを実行してみましょう。Ctrl+Alt+Shift+(設定した番号)でも実行することができます。

「スクリプトを実行しています」というメッセージが表示されたあと「スクリプトが終了しました」のメッセージが表示され、セルA1には「こんにちは」の文字が入力されました。基本的な使い方はこれだけです。

スクリプトを記述しなくても、スプレッドシート上の操作だけでマクロを使うことができました。そのスプレッドシートで初めてマクロが実行される場合は承認が必要になりますが、画面に従ってマクロを使用するアカウントを選び許可しましょう。

マクロの使い方 ~応用編~

最初にも少し触れたとおり、Google スプレッドシートではGASというスクリプトが使われています。先ほど記録したマクロも、実はGASのコードとしてサーバー上に保存されています。

今度はGASを使ってさきほど記録したマクロを発展させてみましょう。
メニューから”ツール”→”マクロ”→”マクロを管理”を選択してください。マクロの管理画面ではスクリプト名やショートカット番号を編集することができます。今回は右側の”・・・”をクリックし、”スクリプトを編集”を選択してください。

別のウィンドウでGASの編集画面が開かれると思います。さきほど記録した操作もGASとしてここに保存されていたのです。

ここで自分で処理を追加してみましょう。

先ほど開かれた編集画面ですでに記述されているコードを消去し、自由に動作を記録することもできますが、今回はマクロの実行時にメッセージを表示するようにしてみます。

”Browser.msgBox(“「こんにちは」と入力します”, Browser.Buttons.OK)”と記述してください。スプレッドシートと違って自動では保存されないので、上書き保存を忘れずに行ってください。

スプレッドシートに戻って、書き換えたマクロを実行するとメッセージが表示されました。

これでGASを使ってのマクロの編集が体験できました。ほかにもスプレッドシート上にボタンを配置しスクリプトを割り当てたり、編集画面で作成したスクリプトをスプレッドシートにインポートすることもできます。

おわりに

2018年の大幅なアップデートでGoogle スプレッドシートがマクロに対応したことにより、今まで手動で行っていた作業をある程度自動で行うことができるようになりました。マクロの記録方法は簡単で、プログラミングやスクリプトの知識がない人でも簡単に扱えるものになっています。またGoogle Apps ScriptやJavaScriptの知識を持つ人にとっても今まで以上に便利に使えるようになりました。

作業の効率化はもちろん、Google Apps Scriptを学ぶ入口にもなるマクロ機能をぜひ使いこなしてみましょう。