GoogleAppsScriptで定時実行する
毎日、同じ時間に実行したい
GoogleAppsScriptで毎日1回、特定の時間に実行したいことはよくありますが、標準機能の日時のトリガー設定は時間単位しかできません。

トリガーを 午前0時~1時にセットすると、何分に実行されるかわかりません。(セットしたトリガーがはじめに午前0時13分に実行すると以降も同じ時間に実行してるっぽいですが、明示的に指定ができません。)
GASの中でトリガーを設定できる
GoogleAppsScriptのコードでトリガーを設定できる関数があります。
日時のトリガーを設定することで、決まった時間に実行できそうです。ただし、不要なトリガーを削除する必要もあります。
https://qiita.com/sumi-engraphia/items/465dd027e17f44da4d6a
プロジェクトのプロパティを利用する
GASにはプロジェクト単位でプロパティがあります。プロパティ、つまり属性です。名前と値がセットになったものです。身長:170cm、体重:60kgとか。
ファイループロジェクトのプロパティで一覧を確認できます。GASからこのプロパティを操作できます。

実行する時間をのプロパティにセットする
トリガーを短い時間の間隔で起動し、プロパティの値をみて、処理を実行するかどうかを決めれば、ほぼ希望通りの時間に起動できます。
今回はトリガーを5分間隔にしました。毎日11:30すぎに実行希望です。
5分おきのトリガー追加

毎日11:30過ぎに実行できるようになりました。
今日だけ時間をずらしたい場合は、手動でプロパティの値を変更すればできます。
セットする時間もコードの中に書くのではなく、プロパティとして持てば、簡単に時間変更が可能です。
以上です。
ディスカッション
コメント一覧
まだ、コメントがありません