Amazonで商品を見るセール会場へ

GAS│トリガーの設定方法|時間主導・編集時・フォーム送信と上限

Google Apps Script(GAS)のトリガーは、決めた時刻や操作をきっかけに、関数を自動で動かす仕組みです。

公式ドキュメントをもとに、種類と作り方、上限をまとめました。

  • 時間主導トリガーは、最短1分ごと〜最長月1回まで
  • 編集時・フォーム送信などは、イベント型のインストール型トリガーで作る
  • インストール型トリガーは、作成者のアカウントの権限で動く
  • トリガーは、1ユーザー1スクリプトあたり20個まで
  • 通常のスクリプト実行は1回6分まで。シンプルトリガーは30秒まで

公式資料に基づく説明と掲載コードのローカル検証を掲載しています。

上限や仕様は、Googleの都合で変わることがあります。

数値は、公式ページで最新を確かめてください。

目次

トリガーの種類

トリガーには、シンプルトリガーとインストール型トリガーがあります。

関数名を onOpen や onEdit にするだけで動くのがシンプルトリガーで、権限の制限が強くなっています。

認可が必要な処理をしたいときは、インストール型を使います。

関連記事:onEditが動かない原因

コードで時間主導トリガーを作る

ScriptApp.newTrigger() で作れます。

function myFunction() {
  console.log('時間主導トリガーの実行: ' + new Date().toISOString());
}

function createTimeTrigger() {
  const exists = ScriptApp.getProjectTriggers().some(function (trigger) {
    return trigger.getHandlerFunction() === 'myFunction' &&
      trigger.getEventType() === ScriptApp.EventType.CLOCK;
  });
  if (exists) {
    console.log('同じ関数の時間主導トリガーがあります。設定画面で間隔を確認してください。');
    return;
  }
  ScriptApp.newTrigger('myFunction').timeBased().everyHours(6).create();
}

公式のドキュメントには、6時間ごとや、毎週月曜の9時といった例があります。

この例は、自分が作成した同じ関数の時間主導トリガーがあれば、新しく作りません。

まずmyFunctionを手動実行してログを確認し、createTimeTriggerを1回実行します。

既存トリガーの間隔は変更しないため、設定画面で6時間ごとになっているか確認してください。

別のアカウントが作成したトリガーは、この一覧取得では確認できません。

スプレッドシートのイベント型トリガー

function createOnOpenTrigger() {
  var ss = SpreadsheetApp.getActive();
  ScriptApp.newTrigger('myFunction')
    .forSpreadsheet(ss)
    .onOpen()
    .create();
}

編集時やフォーム送信のトリガーも、同じ形で作ります。

画面から設定する手順

  1. Apps Scriptに実行対象の関数を保存します。
  2. 左側の「トリガー」を開き、右下の「トリガーを追加」を選びます。
  3. 実行する関数とイベントのソースを選びます。
  4. 時間で動かす場合は「時間主導」、セル編集で動かす場合は「スプレッドシートから」→「編集時」を選びます。
  5. 保存し、求められた権限を確認して認可します。

フォーム送信は、回答先のスプレッドシートに設定する場合とGoogleフォーム自体に設定する場合で、受け取るイベントが異なります。

上限

項目上限
トリガーの数1ユーザー1スクリプトあたり20個
トリガーの合計実行時間無料アカウント90分/日、Workspace 6時間/日
1回の実行時間6分
時間主導の間隔最短1分〜最長月1回
アドオンの時間主導1時間に1回まで
Google公式の割り当てページ(最終更新2026年9月3日)の記載

スクリプトの実行や、APIのリクエストでは、トリガーは起動しません。

ファイルが閲覧・コメントのみの状態で開かれたときも、インストール型トリガーは動きません。

まとめ

  • 時間で動かすなら、時間主導トリガー
  • 権限が要る処理は、インストール型トリガー
  • 20個・90分・6分の上限に注意する

参考:Google Apps Script「Installable Triggers」「Quotas for Google Services」(2026年9月30日確認)。

動作確認と停止方法

自動実行の結果は左側の「実行数」で確認します。

時間主導トリガーは秒単位の定刻実行を保証するものではなく、日次の時刻指定にも実行時刻の幅があります。

停止するときは「トリガー」で対象の関数とイベントを確かめ、対象トリガーだけを削除します。

確認した範囲と公式資料

2026年10月2日に公式資料と掲載コードを照合しました。

コードの分岐はGoogleのサービスを代替したローカルテストで確認し、実サービスでの実行とは区別しています。

GAS上の認可・トリガー発火・同時実行は未検証です。

インストール型トリガーの公式手順

関連する手順:GAS│onEditが動かない原因|シンプルトリガーとインストール型の違い

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

スプレッドシート・GASのおすすめ書籍

作業環境の作り方

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次