コンテンツにスキップ

日付を特定の形式にフォーマットする

Power Automate Desktop には、現在の日付を取得するアクションが用意されているため、取得自体は簡単にできるのですが、取得した日付を操作しようと思うと一工夫必要になります。

また、現在の日付を取得した場合、作成される変数は Datetime 型として格納されるため、使用する場合は注意しなければなりません。

今回は日付データを特定の形式にフォーマットする方法を解説します。

Datetime 型は複数のプロパティを持つ値で、%変数名.Year% などと指定することで日付関係のデータを取得することができます。

ただ、文字列として使用する場合はフォーマットが必要で、「datetime をテキストに変換」というアクションを使ってフォーマットします。

「使用する形式」で「標準」を選ぶと、短い日付・長い日付・並べ替え可能な日時などのひな形から選べるため、基本的に書式を自分で組み立てる必要はありません。独自のフォーマットが必要な場合は「カスタム」を選び、以下のような書式指定子(.NET のカスタム日時書式)を使って指定します。大文字と小文字で意味が異なる点に注意してください。

表記 内容
yyyy 年(4 桁)
MM 月(2 桁)
dd 日(2 桁)
HH 時(24 時間表記、2 桁)
hh 時(12 時間表記、2 桁)
mm 分(2 桁)
ss 秒(2 桁)
fff ミリ秒(3 桁。ff は 1/100 秒まで)
zzz UTC からのオフセット(例: +09:00)

以下のコードをコピーし、Power Automate Desktop の編集画面に貼り付けることで、対象のアクションが追加されます。

DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateAndTime CurrentDateTime=> Current
Text.ConvertDateTimeToText.FromCustomDateTime DateTime: Current CustomFormat: $'''yyyy/MM/dd HH:mm:ss.fff zzz''' Result=> Formatted

Power Automate Desktop を操作して実装

Section titled “Power Automate Desktop を操作して実装”
  1. 「アクションの検索」から、「現在の日時を取得」と入力し、パラメーターを以下のように設定します。

    パラメーター名 値
    取得 現在の日時
    タイムゾーン システム タイム ゾーン
    生成された変数 %Current%
  2. 同じく「アクションの検索」から、「datetime をテキストに変換」と入力し、以下のように設定します。

    パラメーター名 値
    変換する datetime %Current%
    使用する形式 カスタム
    カスタム形式 yyyy/MM/dd HH:mm:ss.fff zzz
  3. 「カスタム形式」を使用したいフォーマットに設定し実行することで、現在の日付を任意の形式で表示できます。