Ⅰ. はじめに
GASのトリガー設定Webページには「毎日6:00丁度に実行」という項目がありません。
この記事ではスクリプトでトリガーを設定する事により「毎日6:00丁度に実行」を実現します。
- 特定の日時を指定した場合は一度しか実行されません。
- トリガー編集画面で「午前 6 時~7 時」と指定した場合、毎日実行されますが「午前 6 時~7 時」の間いつ実行されるか不明です。
Ⅱ. やり方
1. スクリプトを編集する
function deleteAllTriggers () { const triggers = ScriptApp.getProjectTriggers() for (let i = 0; i < triggers.length; i++) { ScriptApp.deleteTrigger(triggers[i]) } } function createTrigger () { const date = new Date() date.setDate(date.getDate() + 1) date.setHours(6, 0, 0) ScriptApp.newTrigger('myFunction').timeBased().at(date).create() } function myFunction () { // トリガーは最大で20個なので、古いトリガーを全て削除する deleteAllTriggers() createTrigger() }
2. 初回のトリガーを設定する
「編集」→「現在のプロジェクトのトリガー」→「トリガーを追加」
実行結果
初回のトリガー①が実行され、「毎日6:00丁度に実行」されるトリガー②が自動的に作成されます。