【GAS入門】業務自動化の第一歩!Google Apps Scriptの基本的な使い方と設定方法を解説

基本解説

「日々の定型業務を、もっと効率化できないだろうか?」
「スプレッドシートでの単純作業に、多くの時間を費やしてしまっている…」
このようなお悩みをお持ちではありませんか?

Googleスプレッドシートは非常に便利なツールですが、関数だけでは自動化しきれない作業も少なくありません。

そこで本記事では、GoogleスプレッドシートをはじめとするGoogleの各種サービスを、プログラミングによってさらに便利にするためのツール「Google Apps Script(GAS)」について、その概要から基本的な設定方法、そして最初のコードを実行するまでを解説します。

プログラミングと聞くと難しく感じるかもしれませんが、GASは特別な開発環境を準備する必要がなく、無料で始められます。

この記事を読み終える頃には、GASが業務効率化の強力な味方になることをご理解いただけるはずです。

Google Apps Script(GAS)とは?

Google Apps Script(グーグル・アップス・スクリプト)、通称GAS(ガス)とは、Googleが提供しているプログラミング言語のことです。一言でいうと「Googleのサービスを自動化したり、サービス同士を連携させたりできるツール」です。

GASは、世界中で広く使われているプログラミング言語である「JavaScript(ジャバスクリプト)」をベースに作られているため、学習のための情報も豊富にあります。

GASでできることの例

GASを使うと、普段お使いのGoogleサービスで、以下のようなことが可能になります。

  • スプレッドシートの操作を自動化する(例:請求書をテンプレートから自動作成する)
  • Gmailを自動で送信する(例:スプレッドシートのリストを元に、一斉にメールを送る)
  • Googleカレンダーに予定を自動で登録する(例:タスクリストの締め切りをカレンダーに自動で反映させる)
  • Googleフォームの回答を自動で処理する(例:問い合わせフォームに回答があったら、担当者に自動で通知メールを送る)

このように、これまで手作業で行っていた多くの業務を自動化できる可能性を秘めています。

GASを利用する4つのメリット

業務改善にGASをおすすめする理由は、主に以下の4つです。

  1. 開発環境の準備が不要
    一般的なプログラミングでは、まず自分のPCに「開発環境」と呼ばれるツールをインストールする必要があります。しかし、GASはGoogleのサーバー上で動作するため、必要なのはGoogleアカウントとインターネットに接続できるPCだけです。ブラウザ上で全ての作業が完結します。
  2. Googleサービスとの連携がスムーズ
    Googleが開発しているツールなので、スプレッドシートやGmail、ドキュメントといったGoogleのサービスとの相性は抜群です。サービス間のデータを連携させる処理も、比較的簡単なコードで記述できます。
  3. 学習コストが比較的低い
    前述の通り、GASはJavaScriptというメジャーな言語がベースです。そのため、インターネット上に豊富な情報があり、学習しやすい環境が整っています。簡単なものであれば、この記事でご紹介するように、コピー&ペーストから始めることも可能です。
  4. 無料で利用を開始できる
    GASの利用は、Googleアカウントさえあれば無料です。ほとんどの業務自動化は無料の範囲内で実現可能です。

【注意】GASの利用制限について

無料で利用できるGASですが、プログラムの1回あたりの実行時間や、1日に実行できる回数など、いくつかの利用制限が設けられています。通常の業務改善でこの上限に達することは稀ですが、大規模な処理を行う場合は注意が必要です。
最新の詳しい情報については、Googleの公式ドキュメントをご確認ください。

GASを始める前の準備:2種類のスクリプト

GASには、プログラムをどこに保存するかによって2つのタイプが存在します。それぞれの特徴を理解しておきましょう。

  • コンテナバインドスクリプト
    スプレッドシートやドキュメント、フォームといった特定のファイルに紐づいて作成されるスクリプトです。ファイルとセットになっているため、ファイルのコピーや移動も簡単です。
  • スタンドアロンスクリプト
    特定のファイルに紐づかず、Googleドライブ上に独立したファイルとして作成されるスクリプトです。複数のスプレッドシートやサービスを横断して操作する、より複雑な自動化に向いています。

今回は入門編として、スプレッドシートに紐づいた「コンテナバインドスクリプト」の作成方法を解説していきます。

GASの基本的な設定と画面の見方

それでは、GASを始めるための具体的な手順を見ていきましょう。
まずはGASのコードを記述するための専用画面「スクリプトエディタ」を開き、その画面構成を理解します。

スクリプトエディタを開く

今回はスプレッドシートに紐づいたスクリプトを作成するため、スプレッドシートからスクリプトエディタを開きます。

  1. GASで操作したいスプレッドシートを開きます。
  2. メニューバーから「拡張機能」をクリックします。
  3. 表示されたメニューから「Apps Script」を選択します。

すると、新しいタブでスクリプトエディタの画面が開きます。

スクリプトエディタの画面構成

初めて開くと見慣れない画面に戸惑うかもしれませんが、基本的な構成はシンプルです。まずは主要な3つのエリアを把握しましょう。

  1. メニューバー: ファイルの保存や実行など、基本的な操作を行うボタンが並んでいます。
  2. ファイル一覧: 作成したプログラム(スクリプト)のファイルが一覧で表示されます。
  3. コードエディタ: 実際にGASのコードを記述するメインのエリアです。

プロジェクト名を変更する

後から見返したときに分かりやすいように、プロジェクトに名前を付けておきましょう。

  1. 画面左上の「無題のプロジェクト」と書かれている部分をクリックします。
  1. ダイアログが表示されるので、「最終更新日時を記録」のような分かりやすい名前に変更し、「名前を変更」ボタンをクリックします。プロジェクト名はご自身の管理しやすいものであれば、どのような名前でも問題ありません。

以上で、GASを書き始めるための基本的な設定と画面の確認は完了です。

【実践】GASでスプレッドシートを操作してみよう

設定が完了したところで、実際に簡単なコードを動かしてみましょう。

今回は「A1セルに見出しを、B1セルに現在の日時を自動で入力する」という処理を実行します。

【ステップ1】コードを記述する

まず、スクリプトエディタに戻り、コードを記述します。

コードエディタに最初から書かれている function myFunction() { … } という部分を、一度すべて削除してください。
そして、以下のコードをコピーして、コードエディタに貼り付けます。

function updateTimestamp() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  sheet.getRange('A1').setValue('最終更新日時');
  sheet.getRange('B1').setValue(new Date());
}

【ステップ2】スクリプトを保存・実行する

コードを貼り付けたら、まず「保存」ボタンをクリックして、変更内容を保存します。

次に、「実行」ボタンをクリックします。

【ステップ3】実行の承認を行う(初回のみ)

初めてそのプロジェクトでスクリプトを実行する際には、「このスクリプトがあなたのデータにアクセスすることを許可しますか?」という確認(承認プロセス)が必要になります。これは、GASが勝手にユーザーのデータを操作しないためのセキュリティ上の仕組みです。

承認プロセスの詳しい手順については、こちらの記事で解説しています。

【ステップ4】実行結果を確認する

承認が完了すると、スクリプトが実行されます。
元のスプレッドシートの画面に戻って、A1セルとB1セルを確認してみてください。

無事に文字や日時が入力されていれば、成功です。

これが、GASを使ってスプレッドシートを操作する基本的な流れとなります。

【応用】トリガーを設定して処理を自動化する

手動での実行が確認できたら、次は「トリガー」を設定して、この処理を完全に自動化してみましょう。

トリガーとは?

トリガーとは、「特定の時間」や「特定の操作(スプレッドシートを編集した時など)」をきっかけ(引き金)にして、プログラムを自動で実行するための仕組みです。

これを設定することで、毎日決まった時間に実行したり、フォームが送信されたタイミングで自動処理をしたりといったことが可能になります。

トリガー設定画面を開く

  1. スクリプトエディタの左側のメニューから、「トリガー」(目覚まし時計のアイコン)をクリックします。
  1. トリガーの一覧画面が表示されます。右下の「トリガーを追加」ボタンをクリックします。

トリガーを新規作成する

「トリガーを追加」ボタンを押すと、設定画面が表示されます。
今回は「毎日午前9時から10時の間に、自動で最終更新日時を記録する」という設定をしてみましょう。

  • 実行する関数を選択: updateTimestamp (コードに記述した function の後ろの名前)
  • イベントのソースを選択: 時間主導型
  • 時間ベースのトリガーのタイプを選択: 日付ベースのタイマー
  • 時刻を選択: 午前9時~10時

上記のように設定し、最後に「保存」ボタンをクリックします。

これで、毎日指定した時間になると、スプレッドシートのB1セルが自動で更新されるようになります。

まとめ

本記事では、Google Apps Script(GAS)の概要から、基本的な設定方法、そして実際にスプレッドシートでGASを動かす手順を解説しました。

  • GASは、Googleサービスを自動化・連携できるプログラミングツール
  • 必要なものはGoogleアカウントとPCだけで、無料で始められる(ただし利用制限あり)
  • スプレッドシートに紐づく「コンテナバインド型」と独立した「スタンドアロン型」がある
  • スクリプトエディタを開き、コードを書いて実行するのが基本的な流れ
  • トリガーを設定することで、特定の時間や操作をきっかけに処理を自動化できる

今回実行したコードは、セルに見出しと日時を入力するだけのシンプルなものでした。しかし、この応用で「特定の条件になったら自動で文字の色を変える」「別のシートからデータを転記する」といった、より複雑な自動化も可能になります。

まずは、あなたの身の回りにある「いつも手作業でやっている、ちょっとした面倒な作業」を、GASで自動化できないか検討してみてはいかがでしょうか。

※Googleサービスは、Google LLC の商標であり、この記事はGoogleによって承認されたり、Google と提携したりするものではありません。