【Power Automate】日時取得の時間ズレと正しい直し方を解説【初心者必見】

Power Automate日時ズレと正しい変換方法
こまったさん

Power AutomateでOutlookイベント日時を正しく取得できない

イチモク

それはタイムゾーンのズレのせいかもしれませんよ

この記事を読んでわかること
  • Power Automateで取得した日時がズレる原因がわかる
  • 日時ズレを正しく変換する方法がわかる

今回はPower AutomateでOutlookアクションのイベント情報やメール情報、日時の取得アクションを使った際に発生する日時ズレについて解説します。

日時ズレを知らないままPower Automateを使った自動化をしてしまうと、予期しない不具合につながる可能性があります。

理由を知ってしまえば、対処法も難しくありません。Power Automate初心者の方は必ず知っておいて損はない情報になります。

ぜひ最後までお付き合いください。

Power Automateをまだ良く知らないという方はコチラから

目次

Power Automateで取得した日時は9時間ズレる

Power AutomateでOutlookのイベント情報を取得する時などの場合、取得する日時が実際の日時よりもズレる現象が発生します。

Outlookイベントで検証した結果

▼Outlook上では、「4月12日 10:00~11:00」のイベントですが、、、

▼Power Automate上で取得した日時は「4月12日 01:00~02:00」になってしまっています。

てじまる

OutlookイベントとPower Automateが取得した日時とでは9時間ずれていますね

日時がズレる原因はPower AutomateがUTC時間として取得するため

この9時間ズレは、Power AutomateがOutlookイベントの日時を「UTC時間」として取得する設定によって生じる現象です。

UTC時間とは協定世界時と言われ、世界標準時刻を定める国際的な時間の基準のことです。

対して日本時間は「UTC+09:00」であり、UTC時間よりも9時間先に進んでいます。この差の9時間がPower Automateでのズレを生じさせているというわけです。

これは、Power Automateの仕様であり設定を変えて正しくするということができません。なので、自分たちでそのズレを正しく処理することが必要です。

どんなアクションの時にズレが生じるのか?

このPower Automateの仕様上、日時のズレはいろいろなアクションで生じます。

日時ズレが生じる主なアクション
Outlookコネクタ「予定の取得」アクション
Outlookコネクタ「メッセージの取得」アクション
Teamsコネクタ「メッセージの取得」アクション
日時コネクタ「現在日時の取得」アクション

中にはアプリケーション側の設定でズレが生じないこともありますので、一度テストで日時取得して検証すると間違いを防ぐことができます。

正しい日時(日本時間)に変換する方法

日時のズレを正しく変換する方法を3つ紹介します。

  1. 「時間への追加」アクションを使う
  2. 関数を使って変換する
  3. 「タイムゾーンの変換」アクションを使う

それぞれ1つずつ解説します。

①「時間への追加」アクションを使う

STEP
▼「時間への追加」アクションは日時コネクタ内にあります。
STEP
▼次の通り設定をすることで、UTCからUTC+9時間(日本時間)にすることができます。
基準時間動的な値「開始時刻※取得したアクションによって変わることがあります。
間隔9
時間単位時間
STEP
▼正しく9時間が追加され「UTC+9時間」になりました。

② 関数を使って変換する

日時を変換する関数はいくつか種類がありますが、今回はその中の「addHours関数」を使います。

STEP
▼先に日時を取得した上で、UTC+9時間したいアクション内で次のとおりに関数を入力します。

addHours(body(‘現在の時刻’), 9 )

addhours関数は日時に対して任意の時間を加算する関数で、3つの引数を使います。

addHours(‘第1引数’,’第2引数’, ‘第3引数’)

今回のケースでは次のような内容になります

第1引数body(’現在の時刻’)
第2引数9
第3引数省略
STEP
▼第1引数で入力した日時に9時間足された日時になりました。

今回は入力を省略しましたが、第3引数に日付フォーマットを入力することで時間加算と同時にフォーマットを設定することも可能です。

③「タイムゾーンの変換」アクションを使う

STEP
▼「タイムゾーンの変換」アクションは日時コネクタ内にあります。
STEP
▼UTCからUTC+9時間(日本時間)に変換する場合には次の通り設定すればOKです。
基準時間現在の時間先に取得しておいた任意の「動的な値」を入力
変換元のタイムゾーン(UTC)協定世界時
変換先のタイムゾーン(UTC+09:00)大阪、札幌、東京変換したいタイムゾーンを入力します。今回は日本時間なのでUTC_09:00にします。
書式設定文字列世界共通の並び替え可能な日時パターン日付フォーマットです。任意のものを選択しましょう。
STEP
▼この方法でも正しくUTC+9時間に変換することができました。
イチモク

3つとも同じ結果になるので好きな方法を1つ覚えておけば大丈夫です。

まとめ:日時ズレ仕様を知ってPower Automateを効率よく使おう!

今回は、Power Automateでイベント情報などを取得する際に発生する日時ズレについて解説しました。

Power AutomateではUTC時間(協定世界時)で日時取得するという設定がされており、日本時間(UTC+9時間)との差異が生じてしまいます。

このズレを正しく変換するには次の3つの方法があります。

  1. 取得した時間へアクションを使って9時間を足す
  2. 取得した時間へ関数を使って9時間を足す
  3. 「タイムゾーンの変換」アクションを使う

どれを使っても同じ結果が得られます。

オススメは、日時フォーマットを同時に設定ができ、明示的にタイムゾーン変換をしていることが分かる「タイムゾーンの変換」です。

Power Automateの日時ズレ仕様を正しく理解しておかないと、思わぬシーンでトラブルになる可能性があります。

イチモク

特にPower Automateを使い始めたばかりの人は注意をしておきましょう。

てじまる

このブログではPower Automateを初めとしたローコードツール、Microsoft365系ソフトの効率的な使い方など定時帰りに役立つ情報を発信しています。
参考になりましたらぜひブックマーク登録をお願いします!

オススメのPower Automate教材はコチラ

PowerAutomateを動画で学びたい方はコチラ
PowerAutomateを書籍で学びたい方はコチラ

▲これから自動化を学びたい方にぴったりの入門書です。PowerAutomateなどのウェブツールは日々進化しています。そのアップデートにより画面構成や用語など、UI自体に見直しが入ることがあります。数年前の書籍では、使われている画面や用語が自分のPC画面と若干違って戸惑うことがあります。その点、この書籍は2024年に発売されたばかりで安心です。

▲これからPower Automate Desktopを始めたい人にオススメの入門書です。基本的なところから実用的はフローの紹介まで幅広く書かれています。図解も多く最初の1冊にぴったり。自分も最初はこの書籍から入りました。PADの書籍選びに迷っているならこの書籍を激推します。

▲Power Automatedesktopをこれから学習する人にはこの書籍がオススメです。インプレス社の「できる」シリーズなので内容は間違いなし。イラストを多用しているので飽きずに最後まで読めます。しかも内容も初心者向けに丁寧に解説されているので、これ一冊でPower Automate Desktopの基礎はマスターできます。

イチモク

ここで紹介している書籍はすべて実際に自分が学習に使ったものですので、安心してオススメできます。

Power Automate日時ズレと正しい変換方法

この記事が気に入ったら
フォローしてね!

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