【Power Automate】
スケジュール通りに実行するには

公開日

 最終更新日

Power Automate クラウドフローでスケジュールを設定したのに、意図した時刻に実行されなかったことはありませんか?
私は夜中の2時に動くよう設定し、翌朝結果を確認してみたら実行されておらず、何が原因かと思ったらまだ開始時刻になっていませんでした…
時刻を指定するだけなのになぜ失敗してしまうのか、注意しておくポイントを押さえましょう。

スケジュール済みクラウドフロー作成の基本

作成ページで「スケジュール済みクラウドフロー」を選択します。
スケジュールの設定画面で、開始日と繰り返し間隔を設定します。
初期設定では今日の10:00AMから、1分ごとに実行となりますが、繰り返し間隔は他に時間・日・週・月などがあり、「週間」にすると曜日を選択することもできます。

スケジュールの初期設定
繰り返し間隔を「週間」にすると曜日も選択可能

開始時刻の見方

先ほど作成したフローを編集画面で見てみると、日付は同じことが分かりますが10:00AMという設定が見当たらず、開始時刻の時間らしき部分は 01:00:00.000Z となっています。
これは10:00AMから自動でUTCに変換されたためです。末尾に「Z」が付いているとUTCと見なされます。
そのため、開始時刻を変更する場合、UTCで設定する必要があります。UTCだと何時になるのか考えて設定しないといけないのです。

UTCとは

協定世界時 【Coordinated Universal Time】
世界の標準時刻の基準として用いられる時刻。UTCは日本標準時(JST)から9時間引いた時間となる。

日本時間で設定する方法

UTCで設定するのは分かりにくいので、タイムゾーンの設定をしましょう。

6/20 1:00AM(UTC) 以降、毎日10:00(JST)で実行

タイムゾーンに「(UTC+9:00)大阪、札幌、東京」を選択します。
左図、頻度を「日」にした場合は設定時刻(時間・分)を別途設定できるのですが、タイムゾーンが反映されるのはこの設定時刻に対してとなります。
ただし、開始時刻には末尾に「Z」が付いていますので、これはUTCのままです。

開始時刻にもタイムゾーンを反映するには、末尾の「Z」を取ります!
「Z」を取ることでどちらも日本時間で設定することができます。
これで分かりやすくなりますね。

6/20 1:00AM(JST) 以降、毎日10:00(JST)で実行
6/20 10:00AM(JST)以降、毎月20日 10:00AM(JST)に実行

設定時刻があって開始時刻を過ぎた後は、特に困らないと思いますが、開始時刻だけの場合は、開始時刻が起点であり実行時刻となります。
末尾「Z」を取って、間違いなく目的の時間に実行させましょう!

(おまけ)アクションで日時を扱う時はタイムゾーン変換

スケジュール実行ではなく、クラウドフローの処理の中で日時を扱うことがあります。

”現在の時刻”で取得した日時もUTCですので、日本時間として扱いたい場合は”タイムゾーン変換”を使いましょう。この二つのアクションをセットで覚えておくとよいですね。

末尾「Z」とその意味、ご存じでしたでしょうか?これでもう間違えることはないでしょう。
確実なスケジュール実行で、さらにクラウドフローをご活用ください。