• Power Automateで日付を『2026/10/08』や『20261008』の形にしたい
  • utcNow()で取得した時刻が9時間ずれている。日本時間にするにはどうすればいいの?
  • メールの件名に『10月8日(木)』のように曜日を入れたい

Power Automateで日付や時刻を扱うと、初期状態では「2026-10-08T01:23:45.0000000Z」のような見慣れない形式で表示されます。

そのままではメールやファイル名に使いにくく、しかも世界標準時(UTC)なので日本時間とずれてしまうのが悩ましいところですよね。

この記事でわかること
  • formatDateTime関数の書き方と、日付・時刻の書式指定の一覧
  • yyyymmdd・年月日・曜日など、よく使う書式のコピペ用サンプル
  • utcNow()を日本時間に変換する方法(式とアクションの2通り)
  • 日付だけの取得、月初・月末、日付の比較、文字列からの変換

この記事では、Microsoft 365の導入・活用支援を行うWITHWITが、Power AutomateのformatDateTime関数の使い方を、実際の画面とコピーして使える式のサンプルで解説します。

formatDateTime関数とは

formatDateTime関数とは、日付と時刻の値を、指定した書式の文字列に変換するPower Automateの関数のことです。formatDateTime(日時, '書式') の形で使い、たとえば formatDateTime(utcNow(), 'yyyy/MM/dd') と書くと「2026/10/08」のような文字列になります。

日付と時刻の表記をさまざまな形式に整えるイメージ

formatDateTime関数は、3つの値を受け取ります。

引数内容例
1つ目:日時(必須)書式を変えたい日時の値utcNow()、トリガーの作成日時など
2つ目:書式(省略可)変換後の形式を表す文字列'yyyy/MM/dd'、'yyyyMMdd'
3つ目:ロケール(省略可)曜日や月の名前に使う言語'ja-JP'(日本語)

formatDateTime関数を使う手順

formatDateTime関数は、アクションの入力欄で「式」として入力します。

ここでは「作成」アクションに、現在の日本時間を「年/月/日 時:分」の形式で入れる例を紹介します。

手順1:「作成」アクションを追加する

フローの編集画面で「+」から「アクションを追加する」を開き、「作成」と検索して「データ操作」の「作成」を選びます。

メールの件名やファイル名など、日付を使いたい場所のアクションに直接入力してもかまいません。

「アクションを追加する」で「作成」を検索し、「データ操作」の「作成」を選ぶ
「アクションを追加する」で「作成」を検索し、「データ操作」の「作成」を選ぶ

手順2:「fx」から式を入力して追加する

入力欄をクリックすると右側に表示される「fx」をクリックし、式エディターを開きます。

式を入力して「追加」をクリックすると、入力欄に式が挿入されます。

入力欄の「fx」から式エディターを開き、formatDateTime関数の式を入力して「追加」をクリックする
入力欄の「fx」から式エディターを開き、formatDateTime関数の式を入力して「追加」をクリックする
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyy/MM/dd HH:mm')

この式は、現在の時刻(UTC)を日本時間に変換したうえで、「2026/10/08 10:23」のような形式に整えます。

式の中の文字列は、半角のシングルクォーテーション(')で囲む点に注意してください。

書式指定子の一覧

書式は、年・月・日などを表す「書式指定子」を組み合わせて指定します。

大文字と小文字で意味が変わるものがあるため、特に「MM(月)」と「mm(分)」の違いに注意しましょう。

書式指定子意味出力例
yyyy西暦4桁2026
MM/M月(2桁/ゼロなし)09/9
dd/d日(2桁/ゼロなし)08/8
HH時(24時間制・2桁)15
hh時(12時間制・2桁)03
mm分(2桁)05
ss秒(2桁)09
ddd/dddd曜日(省略形/完全形)木/木曜日(ロケールが ja-JP の場合)
tt午前・午後午後(ロケールが ja-JP の場合)

よく使う書式のサンプル

業務でよく使う書式を、そのままコピーして使える式にまとめました。

いずれも日本時間に変換してから書式を整えています(「//」の行は説明なので、コピーするときは除いてください)。

// yyyymmdd形式 → 20261008
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyyMMdd')

// スラッシュ区切り → 2026/10/08
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyy/MM/dd')

// 年月日 → 2026年10月8日
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyy年M月d日')

// 曜日付き → 10月8日(木)
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'M月d日(ddd)', 'ja-JP')

// 日時 → 2026/10/08 10:23
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyy/MM/dd HH:mm')

// ファイル名用 → 20261008_102345
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyyMMdd_HHmmss')

曜日を日本語で表示するには、3つ目の引数に 'ja-JP' を指定します。

省略すると既定の英語(en-us)になり、「Thu」のように表示されます。

ファイル名に日時を入れる場合は、使えない記号(「/」「:」など)を避け、上の表のように「_」などで区切りましょう。

utcNow()を日本時間に変換する方法

Power Automateの utcNow() は、世界標準時(UTC)の現在時刻を返すため、そのままでは日本時間より9時間遅れて表示されます。

日本時間にするには、式なら convertFromUtc()、式を使わないなら「タイム ゾーンの変換」アクションを使います。

式で変換する(convertFromUtc)

convertFromUtc(utcNow(), 'Tokyo Standard Time') と書くと、UTCの時刻を日本時間に変換できます。

3つ目の引数に書式を指定すれば、変換と書式設定を1つの関数で済ませることもできます。

convertFromUtc(utcNow(), 'Tokyo Standard Time', 'yyyy/MM/dd HH:mm')

addHours(utcNow(), 9) のように9時間を足す方法もありますが、時刻の値自体はUTCのままなので、後から別の関数で扱うと意図しない結果になることがあります。

タイムゾーンを指定して変換する方法がおすすめです。

アクションで変換する(タイム ゾーンの変換)

式に慣れていない場合は、「日時」コネクタの「タイム ゾーンの変換」アクションを使うと、画面上で変換元・変換先のタイムゾーンと書式を選ぶだけで変換できます。

式を使わずに日本時間に変換したい場合は、「日時」の「タイム ゾーンの変換」アクションを使う
式を使わずに日本時間に変換したい場合は、「日時」の「タイム ゾーンの変換」アクションを使う

「ソースのタイム ゾーン」に「(UTC) 協定世界時」、「変換先のタイム ゾーン」に「(UTC+09:00) 大阪、札幌、東京」を選び、書式を指定します。

日付の取得・計算・比較のよく使う式

formatDateTime関数と組み合わせて使うことが多い、日付の計算や比較の式をまとめます。

カレンダー上で日付を計算したり比べたりするイメージ
// 日付だけを取得する → 2026-10-08
formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyy-MM-dd')

// 7日後の日付 → 2026/10/15
addDays(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 7, 'yyyy/MM/dd')

// 今月の月初 → 2026/10/01
startOfMonth(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyy/MM/dd')

// 今月の月末 → 2026/10/31(翌月の月初から1日戻す)
addDays(startOfMonth(addToTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 1, 'Month')), -1, 'yyyy/MM/dd')

// 文字列を日付に変換する → 2026-10-08T00:00:00.0000000
parseDateTime('2026/10/08', 'ja-JP', 'yyyy/MM/dd')

日付を比較するときは、「条件」アクションで formatDateTime(日付, 'yyyyMMdd') のように同じ形式の文字列にそろえてから比べるか、ticks() 関数で数値に変換してから「より大きい」「より小さい」で比べると確実です。

条件アクションの使い方は「Power Automateの条件分岐と変数の使い方」で解説しています。

Microsoft 365導入支援の現場では、「日付の比較がうまくいかない」というご相談の多くが、UTCと日本時間の混在や、形式が異なる日付同士の比較が原因です。

比較の前に「日本時間に変換」「同じ形式にそろえる」の2点を確認するのがコツです。

formatDateTime関数でよくあるエラー

formatDateTime関数でよくあるエラーは、日時の値が空(null)のときに発生するものです。

SharePointリストの日付列が未入力の場合などに、「最初のパラメーターに文字列が必要」といった内容のエラーでフローが失敗します。

空の可能性がある値を扱うときは、if(empty(値), '', formatDateTime(値, 'yyyy/MM/dd')) のように、空かどうかを判定してから書式を設定しましょう。

また、日本語の日付文字列(例:「2026年10月8日」)をそのまま渡すと、日時として解釈できずエラーになることがあります。parseDateTime() で書式を指定して日時に変換するか、「2026-10-08」のようなISO 8601形式にそろえてから使うと確実です。

日付を使った定期的なリマインド投稿の例は「Power AutomateでTeamsに自動投稿する手順」で紹介しています。

日付関数はMicrosoft 365付属のライセンスで使えますが、プレミアムコネクタと組み合わせる場合のライセンスは次の記事で解説しています。


日々のトラブル、まずこの一冊で解決しませんか?

日付の書式やタイムゾーンのように、Power Automateには「知っていればすぐ直せる」つまずきポイントが数多くあります。

Microsoft 365支援のプロが、現場で実際に寄せられるよくある質問と解決策を厳選してまとめた「トラブルシューティング大全」をご用意しました。

▼資料ダウンロードはこちら 『社内からの「これどうやるの?」を9割削減する Microsoft 365 トラブルシューティング大全』


よくある質問

Q
Power Automateで日付の書式はどうやって設定しますか?
A

formatDateTime関数を使い、formatDateTime(日時, '書式') の形で指定します。
たとえば formatDateTime(utcNow(), 'yyyy/MM/dd') で「2026/10/08」の形式になります。
式はアクションの入力欄の「fx」から入力します。

Q
PowerAutomateのformatDateTimeとは?
A

日付と時刻の値を、指定した書式の文字列に変換する関数です。
年・月・日・時・分などを表す書式指定子(yyyy、MM、ddなど)を組み合わせて、好きな形式に整えられます。
3つ目の引数で 'ja-JP' を指定すると、曜日を日本語で表示できます。

Q
Power AutomateのutcNow()を日本時間にするには?
A

convertFromUtc(utcNow(), 'Tokyo Standard Time') で日本時間に変換します。
書式も同時に指定したい場合は、3つ目の引数に 'yyyy/MM/dd HH:mm' などを指定します。
式を使わない場合は「タイム ゾーンの変換」アクションでも変換できます。

Q
Power Automateで日付をyyyymmdd形式にするには?
A

formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyyMMdd') のように、書式に 'yyyyMMdd' を指定します。
月は大文字の「MM」で指定する点に注意してください(小文字の「mm」は分になります)。

Q
Power Automateで曜日を表示するには?
A

書式に「ddd」(省略形)または「dddd」(完全形)を指定し、3つ目の引数に 'ja-JP' を指定します。
たとえば formatDateTime(日時, 'M月d日(ddd)', 'ja-JP') で「10月8日(木)」のように表示できます。

まとめ

  • formatDateTime関数は formatDateTime(日時, '書式', 'ロケール') の形で、日付・時刻を好きな形式の文字列に変換する
  • 書式指定子は「MM(月)」と「mm(分)」の大文字・小文字の違いに注意する
  • utcNow()はUTCなので、convertFromUtc()や「タイム ゾーンの変換」アクションで日本時間に変換する
  • 曜日を日本語にするには 'ja-JP' を指定、ファイル名には「/」「:」を使わない
  • 日付の比較は、日本時間・同じ形式にそろえてから行う

日付の書式を自由に扱えるようになると、メールの件名やファイル名、Teamsへの通知が一気に見やすくなります。

まずはよく使う書式のサンプルをコピーして試してみてください。


他社はPower Automateをどう活用している?

日付を使った定期通知や書類の自動作成を、他社がどのように活用しているのか気になりませんか。

そんな疑問をお持ちでしたら、ぜひ弊社の「中小企業の導入成功事例集」をご覧ください。

▼成果の出る Microsoft 365 活用法とは?中小企業の導入成功事例集をダウンロードする


参考資料

Microsoft 365に関するご相談やお悩みがございましたら、ぜひ株式会社WITHWITまでお気軽にお問い合わせください。
数あるクラウドサービスの中でMicrosoft 365 に特化してきたからこそ導入前から導入後の定着に至るまで、幅広いご相談に対応いたします。