こんにちは。エクスチュアの岩川です。
さて、前回に引き続きGASです。
段々とGASの基本的なことがわかってきたでしょうか。
今回はボタンをわざわざ押すのもなあ…という方向けに、『関数を特定の時間やタイミングで動かす方法』をお伝えしようと思います。
①トリガーを作成する
GASを開きましょう。今回は前回で作成した関数を引き続き使用していこうと思います。
時計アイコンをクリックします。

右下にある【トリガーを追加】をクリックします。

②トリガーの種類を選択する
すると以下のようなウィンドウが出てきます。ひとつひとつ解説していきます。

◆実行する関数を選択
こちらは関数が複数ある場合、どの関数を動かしたいかを選択します。
◆実行するデプロイを選択
こちらはバージョンを選択できます。
コードの修正や追加を行った際にバージョン管理を行うことができ、そのバージョンを指定することができます。
すぐに使うことはないと思いますので今はHeadのままで大丈夫です。
◆イベントのソースを選択・イベントの種類を選択
ここからが重要です。
イベントのソースを選択したあと種類を選択していくのですが、こちらはソースごとに解説していきます。
・【スプレッドシートから】を選択
①起動時
スプレッドシートを開いた際に動くようになります。
例えばスプレッドシートを起動した際にフォーマットを整えるなどのコードに使えます。
②編集時
セルの値を変更したり、列や行の追加・削除をおこなった際に起動します。
追加や削除などによるフォーマットエラーが起こっていないかなどに使えます。
③変更時
編集時と似ていますが、こちらはセルの値の変更のみが対象です。
セルの値を操作したいだけなどだとこちらのほうが使いやすいです。
④フォーム送信時
こちらはGoogleフォームと連携した際にのみ動作するトリガーです。
Googleフォームで入力された値をスプレッドシートで集計・整理したい場合に便利です。
・【時間主導型】を選択
①特定の日時
YYYY-MM-DD HH:MMの形で日時を指定するとその時間に関数が動きます。
②●●ベースのタイマー
特定の期間おきに動作するようにします。
週・月ベースのタイマーは期間を選択した上で時刻も選択する必要があります。
・【カレンダーから】を選択
こちらは少し特殊で、calendarAppを利用することでカレンダーの編集時に値を取得することができます。
「カレンダーのオーナーのメールアドレス」にカレンダーIDを入力する必要があります。カレンダーと連携させたい場合に使用しましょう。
・エラー通知設定に関して
エラー通知設定はトリガーを動作させた際のエラーメッセージをどのタイミングで受け取るかを表しています。
③トリガーの設定
今回はすぐに結果が見れるように
【時間主導型】>【分ベース】>【5分おき】
の指定にします。

このまましばらくまってみましょう。
④結果
最初のスプレッドシートはこのようになっていました。

5分後、しっかり関数が動作していることがわかります。

なおこちらが実行しているかどうかは以下の赤枠部分をクリックすることでも一覧として出てきます。

今まで関数を動かしてた方法(今回の場合は「時間主導型」と出ていますね)も表示されます。
エラーがある際に通知を見ていなくてもこちらで一覧として確認が可能です。
今回は指定した時間で実行してくれる方法についてお伝えしました。
このトリガーを利用することで更に様々な作業を効率よく行うことができます。
エクスチュアでは様々な企業様の基本的な悩みから高度な悩みまで丁寧にお手伝いいたします。
是非お気軽にお問合せください。