業務ハックLab -とある情シスの備忘録-

とある情シスの備忘録的なものです。

【スポンサーリンク】

Power Automate 日付関数解説Part1

皆さん、こんにちは。
業務ハックLabのようです。

今回はPower Automateで使用する日付関数について解説していきたいと思います。

この記事は、Power Automate Advent Calendar 2022 12月8日担当分の記事です!

qiita.com

今回解説する関数

今回、解説をしていく日付関数は以下の8つです。

  • addToTime
  • subtractFromTime
  • addSeconds
  • addMinutes
  • addHours
  • addDays
  • getFutureTime
  • getPastTime

それでは早速いってみましょう!

addToTime

addToTimeは指定したタイムスタンプに対して指定した時間単位を加算をする関数になります。
数式の構成としては下記の形。

addToTime(タイムスタンプ,加算する数値,時間単位,日時の書式)

第一引数は対象となるタイムスタンプを指定する箇所になります。
例えばNow関数で取得した現在の日時などですね。
第二引数は第一引数に対して加算したい数値を指定する箇所になります。
第三引数は加算する時間単位を指定する箇所になります。
例えば3時間加算したい場合は第二引数で「3」、第三引数で「"Hour"」と指定します。
第三引数で指定できる時間単位は下記のとおり。
「Second}、「Minute」、「Hour」、「Day」、「Week」、「Month」、「Year」
第四引数は日付の書式を設定する箇所になります。
単一の書式指定子もしくはカスタム書式パターンを指定できます。
どのようなものがあるかは下記を参照してみてください。

learn.microsoft.com

learn.microsoft.com

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

加算する時間:1時間
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

addToTime(’2023/1/1 0:00:00',1,’Hour','u')
'(シングルコーテーション)で囲むのを忘れないようにしてください。
上記のように指定すると戻り値は以下のようになります。
2023-01-01 01:00:00Z
subtractFromTime

subtractFromは指定したタイムスタンプに対して指定した時間単位を減算する関数になります。
数式の構成としては下記の形。

subtractFromTime(タイムスタンプ,減算する数値,時間単位,日時の書式)
第一引数~第四引数の構成はaddToTimeと同じですが第二引数は減算する数値を指定します。

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

減算する時間:1時間
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

subtractFromTime(’2023/1/1 0:00:00',1,’Hour','u')
上記のように指定すると戻り値は以下のようになります。
2022-12-31 23:00:00Z
addSeconds

addSecondsは指定したタイムスタンプに対して指定した秒を加算する関数になります。
数式の構成としては下記の形。

addSeconds(タイムスタンプ,加算する数値,日時の書式)
addToTimeと似ていますがこちらの関数は時間単位があらかじめ決められています。
第一引数は対象となるタイムスタンプを指定する箇所になります。
第二引数は第一引数に対して加算したい数値を指定する箇所になります。
第三引数は日付の書式を設定する箇所になります。
 例題)

タイムスタンプ:「2023/1/1 0:00:00」

加算する時間:1秒
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

addSeconds(’2023/1/1 0:00:00',1,'u')
上記のように指定すると戻り値は以下のようになります。
2023-01-01 00:00:01Z
addMinutes

addMinutesは指定したタイムスタンプに対して指定した秒を加算する関数になります。
数式の構成としては下記の形。

addMinutes(タイムスタンプ,加算する数値,日時の書式)
第一引数~第三引数の構成はaddSecondsと同じです。

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

減算する時間:1分
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

addMinutes(’2023/1/1 0:00:00',1,'u')
上記のように指定すると戻り値は以下のようになります。
2023-01-01 00:01:00Z
addHours

addHoursは指定したタイムスタンプに対して指定した秒を加算する関数になります。
数式の構成としては下記の形。

addHours(タイムスタンプ,加算する数値,日時の書式)
第一引数~第三引数の構成はaddSecondsと同じです。

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

減算する時間:1時間
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

addHours(’2023/1/1 0:00:00',1,'u')
上記のように指定すると戻り値は以下のようになります。
2023-01-01 01:00:00Z
addDays

addSecondsは指定したタイムスタンプに対して指定した秒を加算する関数になります。
数式の構成としては下記の形。

addDays(タイムスタンプ,加算する数値,日時の書式)
第一引数~第三引数の構成はaddSecondsと同じです。

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

減算する時間:1日
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

addDays(’2023/1/1 0:00:00',1,'u')
上記のように指定すると戻り値は以下のようになります。
2023-01-02 00:00:00Z
getFutureTime

getFutureTimeは現在のタイムスタンプに対して指定した時間単位を加算する関数になります。
ちなみにタイムスタンプのタイムゾーンUTCとなっています。
数式の構成としては下記の形。

getFutureTime(加算する数値,時間単位,日時の書式)
第一引数は加算する数値を指定する箇所になります。
第二引数は時間単位を指定する箇所になります。
第三引数の構成は日付の書式を設定する箇所になります。

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

減算する時間:1日
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

getFutureTime(1,'Day','u')
上記のように指定すると戻り値は以下のようになります。
2023-01-02 00:00:00Z
getPastTime

getPastTimeは現在のタイムスタンプに対して指定した時間単位を減算する関数になります。
こちらもタイムスタンプのタイムゾーンUTCです。
数式の構成としては下記の形。

getPastTime(加算する数値,時間単位,日時の書式)
第一引数~第三引数の構成はgetFutureTimeと同じです。
但し第一引数、第二引数で指定した数値、単位を減算する形になります。

 例題)

タイムスタンプ:「2023/1/1 0:00:00」

減算する時間:1日
書式:並べ替え可能な日付と時刻のパターン (世界時刻)

この条件の場合は下記のように設定します。

getPastTime(1,'Day','u')
上記のように指定すると戻り値は以下のようになります。
2022-12-31 00:00:00Z
addSeconds関数などは時間単位が指定されていたのに対してgetFutureTime、getPastTimeはタイムスタンプが指定されている関数となります。
ちなみにどの関数も加算、減算する数値を負の値にすることもできます。
その場合は返ってくる戻り値は加算系の関数が減算された結果に、減算系の関数は加算された結果が返ってきます。
私は基本的にはあまり使い分けはせずにaddToTime関数で済ませてしまってます。
加算減算すると時間が決まっていればタイムゾーンの変換もこの関数でできてしまうので覚えておくといいと思います!
 
今回は、日付関数の中でも加算、減算をする関数について解説しました!
次回はタイムゾーンの変換を行う関数について解説したいと思います。
それでは皆さん、良い業務ハックライフを~
 
 

 

 

免責事項