スプレッドシートでのマクロの使い方について解説!

はじめに

アイキャッチ

Googleスプレッドシートにはマクロ機能があります。

Excelのようにユーザー操作を記録してマクロを作成することもできますし、VBAの代わりにGoogle Apps Scriptを使いマクロの編集もできます。

今回は、スプレッドシートでのマクロの使い方について解説していきます。

スプレッドシートでのマクロの使い方

マクロの記録

まずはマクロの記録から始めます。新規でスプレッドシートを開きます。

新規スプレッドシート

スプレッドシート名を「マクロ」と変更します。A1セルに「test」と入力しておきます。

test

スプレッドシートのマクロ機能は、ユーザーが行なった操作を「Apps Script」のスクリプトとして記録します。

スプレッドシート画面で[ツール]→[マクロ]→[マクロの記録]を選択しましょう。

マクロの記録

スプレッドシートの下部に「新しいマクロを記録しています」というバーが現れ、ユーザー操作の記録が開始されます。
このバーでは操作記録の保存、記録のキャンセル、また絶対参照を使用するか相対参照を使用するかを選択できます。

絶対参照はマクロの適用時に記録時と同じセルを使用する設定で、相対参照はマクロの適用時に選択中のセルを使用する設定です。

今回は絶対参照のままで作成します。

マクロの記録

「test」を太字にします。(この時バーに「操作1 書式スタイルを設定」と少しの間表示されます。)

太字

フォントの色を変えます。(この時バーに「操作2 書式スタイルを設定」と少しの間表示されます。)

フォント色

記録したい操作が終了したら、バーから「保存」を選択しましょう。

保存

保存時にマクロの名前とショートカットキーを指定できます。マクロの名前を「マクロ1」、ショートカットキーは[command]+[option]+[Shift]+[1]とします。

保存

保存します。「新しいマクロを保存しています」のメッセージが表示されます。

保存中

「マクロを保存しました」のメッセージが表示されたらOKです。

保存完了

マクロの実行

A1セルに「sample」と入力し、書式設定をリセットします。

sample

[ツール]→[マクロ]を選択すると、記録したマクロが一覧で確認できます。

先ほど作成した「マクロ1」を選択します。もしくは[command]+[option]+[Shift]+[1]で実行できます。

マクロの実行

初めてマクロを実行する時は承認が必要です。以下のようなメッセージが表示されるので「続行」をクリックします。

承認

紐付いているアカウントを選択します。

アカウント選択

以下のように「このアプリは確認されていません」と警告が表示される場合があります。

「詳細を表示」をクリックすると、「記録されているマクロ(マクロ)(安全ではないページ)に移動」が表示されるのでクリックしましょう。

警告

以下のような画面が表示されます。「許可」をクリックします。

許可

これで承認は完了です。もう一度「マクロ1」を実行しましょう。

マクロ1

マクロが実行され、「sample」の書式設定が変更されました。

実行完了

マクロの編集

[ツール]→[マクロ]→[マクロの管理]を選択します。

マクロの編集

ここから保存済みのマクロの編集や削除ができます。

マクロの管理

以下のように[︙]→[スクリプトを編集]を選択します。

アスクリプトを編集

これでGoogle Apps Scriptのエディタが開きました。コードを書き換えることでマクロを編集できます。

エディタ

“spreadsheet.getRange(‘A1’)”“spreadsheet.getRange(‘D2’)”とすると書式スタイルを変更するセルの番地がD2に、

“setFontWeight(‘bold’)”“setFontStyle(‘italic’)”とすれば太字ではなく斜体に、

“setFontColor(‘#00ff00’)”“setFontColor(‘#ff9900’)”とすればフォントの色が黄緑からオレンジに変更できます。

保存

ここまで書き換えたら[command]+[s]で保存します。

保存

スプレッドシートに戻ります。D2セルに「edit」と入力し、カーソルをA2セルに置きます。[command]+[option]+[Shift]+[1]でマクロ1を実行します。

マクロの実行

先ほど書き換えた通りD2セルの「edit」が斜体になり、フォントの色がオレンジに変更されました。これでマクロの編集まで完了です。

マクロの編集

Google Apps Scriptを使われている方向け裏技

まず適当なマクロを記録します。
記録したマクロの中身を全消し※して自分の好きなプログラム(スクリプト)を書く、変更を保存する、スプレッドシートの[ツール]→[マクロ]からマクロを実行で、Google Apps Scriptで書いたプログラムをスプレッドシート画面から実行することができます。

もちろんショートカットキーからも呼び出せるので非常に便利です。

※ 自動生成された関数名は変更しないようにしましょう。スプレッドシートから呼び出せなくなります。

おわりに

今回はスプレッドシートでのマクロの使い方について紹介してきました。マクロ機能だけでも十二分に便利なのですが、前述の通りGoogle Apps Scriptとマクロ機能の合わせ技でさらにスプレッドシートが便利に扱えるようになります。

また、業務に直結しやすい言語なので、Google Apps Scriptを覚えておいて損はありません。気になった方はそちらもぜひ学習してみてください!