見出し画像

GASを指定した時間(分)で動かす方法を考えた

tmdはかんがえた!

ということで、GASを10:00きっかりに稼働するようにスケジューラを入れたくて考えて考えた結果、GASじゃなく別のツールで発動させようと思った話。
(tmdはこの方法が浮かんだけど他の方法でもアリだと思う)

手順

  1. 有料契約しているSlackのワークスペースを用意します

  2. スプレッドシートを用意します

  3. ワークフローで動かしたい時間に毎日動くワークフローを作ります

  4. 3が動いた時にスプレッドシートに書き込むようにします。

    1. この時、同じセルを更新し続けてもよし、ログのように追記してもよし

  5. スプレッドシートに紐づくGASを用意します。

  6. コードを書きます

  7. GASのトリガーをスプレッドシートが更新されたタイミングにします

  8. 以上!

これだけだとつまらないので、以下にしてみると面白いと思っている

発展系

  1. ワークフローで書き込む値をワークフロー開始日時にする

  2. GASで処理が終わったらスプレッドシートの日時がある列の隣に終了日時を入れる

  3. ワークフロー側のステップに「遅らせる」処理を追加する

    1. GASが終わる時間分遅らせる

  4. スプレッドシートの終了日時を取得する

    1. もしかしたら、開始日と終了日を比較して「成功」「失敗」と表示する関数を入れておけば、その値を出すことも可能だし、やろうと思えばリトライできるコードにもできそう


余談

onEditを使ったら動くのではないかと思ったが、テストをしていないので、もしonEditで動く場合は記事を追記します。


この記事が気に入ったらサポートをしてみませんか?