スプレッドシートでマクロを使う

はじめに

スプレッドシートとはGoogle社が提供する表計算ソフトのことですが、普段から使用している人も多いのではないでしょうか。同じ表計算ソフトであるExcelと使い勝手がほぼ同様であり抵抗なく利用することができますよね。

そんなスプレッドシートとExcelの大きく、そして決定的な違いは何か考えた時に思い浮かぶのは料金ではないでしょうか。Excelは導入しようとするとどうしても料金がかかってしまうものです。しかしスプレッドシートはGoogleのアカウントがあれば誰でも利用することが出来ます。とても手軽に使用することができるのがスプレッドシートの魅力ですね。

スプレッドシートは先述の通りExcelとほぼ同様の機能を保有しているため、今までExcelで管理していた資料をスプレッドシートに移行した、なんて経験がある方も多いでしょう。私もそのような経験があります。

さて、Excelには数々の機能が備わっていますが、その機能の一つにマクロがありますね。マクロというのは決まった処理をExcelに記憶させておき、その処理を一瞬のうちに行うことが出来るようになる大変便利な機能です。計算、行や列の削除・追加、表の作成など自動化できる機能は様々です。スプレッドシートでも2018年にマクロの記憶と再生に対応しました。歓喜した人もたくさんいたでしょう。

今回は使うと圧倒的に効率の良い作業ができるマクロの、スプレッドシートでの使い方を紹介していきます。私も正直スプレッドシートでマクロの設定をしたことはなかったので、自身も学習しながら初心者の立場で有用な情報を提供できればと考えています。

マクロを記録する手順

保存

まずは基本の”き”。マクロの記録について、手順から紹介しましょう。

上部のメニューから「ツール」のタブをクリックします。するとツールメニューがオープンします。「ツール→マクロ→マクロを記録」の順番で進んでください。「新しいマクロを記録しています」の表記が出ます。これだけでもう記録が始まるのです。あとは記録したい作業を実行すればよいのです。

しかし、ここで1つ気になることがありませんか?新しいマクロを~の下に「絶対参照を使用」「相対参照を使用」のどちらかを選ぶラジオボタンが出ましたね。これはマクロを実行したときにどのセルを参照するのか決められる機能です。絶対参照と相対参照についてはそれこそExcelを使ったことがある人であれば理解しているかもしれませんが違いを下記にまとめました。

「絶対参照」・・・マクロを実行するセルの場所が固定されている状態

「相対参照」・・・マクロを実行するセルの場所が都度変えられる状態

毎回同じセル番地で実行するのであれば「絶対参照」、実行するセルが決まっていない場合は「相対参照」を使用するということですね。あまりイメージがつかめない場合は絶対参照と相対参照の2種類を作成して実行するときに比較してみるのも良いかもしれません。

さて、参照するセルについて選択し、記録したい作業を実行したら「保存」をクリックします。

すると保存のダイアログが表示されます。任意の名前を付け、必要に応じてショートカットキーを割り当ててください。Ctrl+Alt+Shiftは最初から決まっていますので割り当てるキーを入力すればOKです。あとは保存して「マクロを保存しました」と出れば完了です。

私はとりあえず、1つのセル(相対参照)に「おはよう」という文字を打つ簡単なマクロを保存してみました。

実行・承認作業

さて次は保存したマクロを実行してみましょう。保存されているマクロを実行するためには2通りのやり方があります。

1.「ツール→マクロ→記録したマクロ」の順に進んで呼び出す

2.保存の際割り当てたショートカットキーを押して実行する

ショートカットキーの割り当ては任意でしたので設定している場合は2、していない場合は1になるでしょう。

実行の手順としては以上なのですが、初回のみマクロの実行には承認作業が必要になります。実際に実行しようとしてみてください。「承認が必要」というダイアログが表示されますね。承認の手順としては以下です。

1.「承認が必要」の画面で「続行」をクリックします。

2.Googleアカウントを選択する画面に切り替わるので、編集しているスプレッドシートに紐づいているアカウントを選択します。

3.その後の画面で「記録されているマクロがGoogleアカウントへのアクセスをリクエストしています」という旨の確認画面へと遷移します。「許可」をクリックしてください。
以上で承認作業は終了となります。

実行できるようになったのを確認してみてください。マクロの実行中は「スクリプトを実行しています」のアナウンスが表示され、保存されている一連の作業が終了すると「スクリプトを終了しました」の表示に変わります。私の場合相対参照で保存していましたので、その都度選択するセルを変更して実行しました。実行結果として、複数のセルにおはようと表示されるのが確認できました。

ここまでがマクロの保存、そして実行する基本の操作になります。単純な作業であればこのように実際に自分で操作して記憶させておくことが出来るので、マクロを使用したことがない人でも気軽に取り入れることができますね。

編集

一度保存したマクロとは違う動きを実行させたいとなった場合、マクロの編集が必要になります。上記で紹介した「自分で実際に操作し、それを記憶させる」方法ではもう一度1から記憶し直さなければいけません。試しに記録したような少しの動作であればそれで充分ではありますが、もっと工程が多かったり、複雑だったりするともう一度操作して登録というのは少し難しかったりします。

そんなときに使うのが「スクリプトエディタ」です。マクロの編集にはスクリプト言語であるGASが使用できます。手順としてはツール→スクリプトエディタの順で進んでいくと編集画面を開くことが出来ます。このエディタで編集なり、1からコードを書いて実行させたい動作を記録することもできます。

エディタに書いて記録したマクロも先ほど同様ツール→マクロの実行や、ショートカットキーから呼び出すことが出来て大変便利ですね。

この記事ではGASについて詳しくは触れませんが、この機会に覚えてみてはいかがでしょうか。

まとめ

マクロはExcelの強みというイメージが強かったですが、今ではスプレッドシートでも簡単に使うことが出来るということが分かりましたね。また、Excelでは本格的にマクロを編集しシステムを作るとなるとVBAの知識が必要でしたが、スプレッドシートで編集する場合はスクリプトの知識があればよいということもわかりました。最初は自分の動作を記録させるところから始め、だんだんと複雑な処理もできるようになると業務をこれまでの何倍も効率よく回せるようになるでしょう。