【GASイベントトリガー】種類一覧と使い方を解説!【カレンダー・スプレッドシート】

2020-02-14

【GAS】Google Apps Scriptトリガーの種類と使い方を徹底解説!
mono
mono
こんにちは、monoです。

Google Apps Scriptのトリガー機能、しっかり活用していますか?

トリガー機能を使えば決まった時刻や頻度、タイミングに、自動でスクリプトを実行することができるのでとても便利です。

当記事では、

  • Google Apps Scriptのイベントトリガーとは?
  • イベントトリガーの設定方法【5つの手順】
  • イベントトリガーの種類と使い方
  • イベントトリガー設定時の注意点

というテーマで解説します。

Google Apps Scriptのトリガーとは?

Google Apps Scriptのトリガー機能とは、いわゆるスケジューラ機能です。決まった時刻や頻度、タイミングに、自動でプログラムを実行してくれる機能のことです。

トリガー機能を活用することで、人間がプログラムの実行を制御しなくて良くなるので、運用が楽になるというメリットがあります。

トリガーの設定方法【5つの手順】

Google Apps Scriptのトリガーは、以下5つの手順で設定できます。

  1. 「トリガーボタン」をクリック(時計マーク)
  2. 「トリガーを追加」をクリック
  3. トリガーの詳細を設定
  4. Googleアカウントでログイン
  5. トリガーが設定されたのを確認

1手順ごとに解説していきます。

「トリガーボタン」をクリック(時計マーク)


スクリプトの編集画面を開き、右上にある「トリガーボタン」をクリックします。

時計のようなマークをしているのが「トリガーボタン」です。

「トリガーを追加」をクリック


「トリガーボタン」をクリックしたら、トリガー設定画面が開きます。

トリガー設定画面を開いたら、右下にある青いボタン「トリガーを追加」をクリックして、トリガーを追加します。

トリガーの詳細を設定


「トリガーを追加」をクリックしたら、トリガーの詳細を設定するポップアップが表示されます。

基本的には赤枠で囲っている項目を設定すればOKです。

実行する関数を選択

実行する関数をプルダウンで選択します。

イベントのソースを選択

どのようなイベントでトリガーを起動するか選択し、「保存」をクリックします。

イベントの3種類

  • スプレッドシート
  • 時間主導
  • Googleカレンダー

それぞれの設定方法については次節で解説します。

Googleアカウントでログイン

Google Apps ScriptはGoogleアカウントによって実行されます。

まだ一度もプログラムを実行していなければGoogleアカウントへのログインが求められますので、実行に使いたいGoogleアカウントを選択し、ログインしましょう。

なお、このときに「安全でないアプリ」という警告がされることがあります。この警告への対処法については、記事の最後で解説しているので、警告されてしまった人はそちらを参考にしてください。

トリガーが設定されたのを確認


ログインに成功したら、無事にトリガーが生成されているか確認してください。

画像のように新しいトリガーが表示されていれば成功です。定期的にエラーが起きていないか「エラー率」をチェックするのも保守性の観点で大切です。

トリガーイベントの種類一覧と使い方

トリガーを実行するタイミング(イベント)の種類と、それぞれの使い方について解説します。

すでに紹介した通り、Google Apps Scriptのイベントトリガーには以下の3種類があります。

  • スプレッドシート
  • 時間主導
  • Googleカレンダー

1種類ずつ解説していきます。

スプレッドシートから

スプレッドシートを起点として実行されるイベントトリガーです。

イベントの種類としては以下の4種類があります。

イベントの種類 内容
起動時 スプレッドシートを起動したとき
編集時 スプレッドシートを編集したとき
変更時 スプレッドシートを変更したとき
フォーム送信時 フォームを送信したとき

編集時と変更時の違い

編集時」は、列や行の追加・削除など、スプレッドシートに何らかの編集を加えた際に起動します。

一方「変更時」は、セルの値を書き換えたときにしか起動しません。

フォーム送信時って?

Googleフォーム送信時に起動するトリガーです。

主にフォームの回答内容を取得して、メールや通知、データの保存などを行いたいときに使います。

スプレッドシートやGmailから作成したスクリプトでは使えないことに留意してください(Googleフォームから作成したスクリプトでトリガー設定)。

時間主導型

日時を起点として実行されるトリガーイベントです。

イベントの種類としては以下の6種類があります。

トリガーのタイプ 設定項目
特定の日時 任意の日時に実行
分ベースのタイマー 1分おきに実行
5分おきに実行
10分おきに実行
15分おきに実行
30分おきに実行
時ベースのタイマー 1時間おきに実行
2時間おきに実行
4時間おきに実行
6時間おきに実行
8時間おきに実行
12時間おきに実行
日付ベースのタイマー ◯時〜◯時に実行(1時間区切り)
週ベースのタイマー 毎週◯曜日に実行
月ベースのタイマー 毎月◯日に実行

カレンダーから

カレンダーを起点として実行されるトリガーイベントです。

イベントの種類としては以下の1種類があります。

トリガーの種類 設定項目
カレンダー更新済み
(カレンダー更新時に実行)
カレンダーオーナーのアドレス

トリガー設定時の注意点

トリガー設定時に注意すべき点についてまとめました。

めったにひっかかることはないでしょうが、もしものときには参考にしてください。

安全でないアプリと警告されたとき

どのようなパターンで表示されるのか不明ですが、人によってはスクリプトを実行したりトリガーを設定したりする際に「安全でないアプリ」と警告を受けることがあるそうです。

対処法としては、以下の手順で警告を無視して設定すればOKです。警告されてはいますが、警告されているアプリ(Google Apps Scriptのコード)を作ったのはあなたなので、特に心配する必要はありません。

「詳細」をクリック

「安全でないページ」に移動

「許可」をクリック

トリガーの設定数に制限がある

Google Apps Scriptでは、無限にトリガーを設定できるわけではありません。

「1人のユーザーは1つのスクリプトに対して最大20までしかトリガーを設定できない」という制限があるので注意しましょう。

【GAS】Google Apps Scriptで注意すべき制限まとめ【実行回数・時間・容量】

続きを読む

まとめ

今回は「Google Apps Scriptのトリガーとは?」「トリガーの設定方法【5つの手順】」「トリガーの種類と使い方」「トリガー設定時の注意点」について解説しました。

Google Apps Scriptのトリガー機能はとても使い勝手が良いです。無料でここまでできるのは本当に奇跡なので、みなさんもぜひ活用してみてください。

では、また。

【GAS入門】Google Apps Scriptでできることを徹底解説!

続きを読む


【GAS】Google Apps Scriptの勉強におすすめの本3選

続きを読む

  • この記事を書いた人

mono

26歳♂首都圏住みの副業会社員/ギークでズボラないい暮らし/ADHD・HSP傾向/将来はサイドFIREでのんびり暮らしたい/楽天経済圏/リベ大生/インデックス・高配当株投資300万/お仕事の依頼はこちら

スキルを磨く Google Apps Script

© 2021 monoblog