LoginSignup
5
6

More than 3 years have passed since last update.

Power AutomateでExcelの日付データをISO 8601形式で受け取れるようになった

Last updated at Posted at 2021-02-11

はじめに

Excelの日付データはシリアル値で格納されており、そのままだとPower Automateでの扱いに難があったのですが、2021年1~2月ごろのアップデートにより、ISO 8601形式で取得できるようになりました。やった!

設定方法

「表内に存在する行を一覧表示」などで詳細オプションを開き、「DateTime 形式」で選択できるようになりました。
image.png
Serial Numberだとこれまで同様シリアル値、ISO 8691にすると日付になります。
(未指定時はシリアル値のまま)

挙動確認

元のExcelデータ

こんな感じです
image.png

シリアル値で取得

日付は"44228"のようなシリアル値になります。

[
  {
    "@odata.etag": "",
    "ItemInternalId": "8a39f0a9-a14e-40ac-b0e8-b2ba4dc80a9c",
    "日付": "44228",
    "曜日": "月"
  },
  {
    "@odata.etag": "",
    "ItemInternalId": "4e46e454-5b1d-4d57-9abd-b14375225d75",
    "日付": "44229",
    "曜日": "火"
  },
  {
    "@odata.etag": "",
    "ItemInternalId": "0b61debf-9368-4dc5-beaf-4449bf5d5276",
    "日付": "44230",
    "曜日": "水"
  }
]

ISO 8601形式で取得

"2021-02-01T00:00:00.000Z"のような日付データで取得できます。

[
  {
    "@odata.etag": "",
    "ItemInternalId": "af096b14-9592-41b7-88c1-4a86ee33900e",
    "日付": "2021-02-01T00:00:00.000Z",
    "曜日": "月"
  },
  {
    "@odata.etag": "",
    "ItemInternalId": "d89ebaa0-b30e-49e2-a117-e966cfb60911",
    "日付": "2021-02-02T00:00:00.000Z",
    "曜日": "火"
  },
  {
    "@odata.etag": "",
    "ItemInternalId": "06fd955c-17a9-4921-8fdb-46f634cab404",
    "日付": "2021-02-03T00:00:00.000Z",
    "曜日": "水"
  }
]

日付として処理をする

日付になっているなら日数を足したり引いたりもできるはずなので試してみました。

日付の追加

一週間分日付を足してみましたが、ちゃんと計算してくれます。

image.png

日付のフィルター

「アレイのフィルター処理」で絞込が可能でした。

image.png

ただし、Excelのフィルタークエリで「日付 eq '2021-02-02T00:00:00.000Z'」のように書いてもダメでした。

2021/2/18追記

が、フィルタークエリが使えないわけではなく、「日付 eq '2021-02-02'」などでフィルタ可能でした。

日付により条件分岐

これもちゃんと動きます。

image.png

image.png
image.png

おわりに

この機能は嬉しいですね。何とかシリアル値を計算しようとしていたり、Excelで日付解釈用の文字列を入れた列を用意したりしていたのですが、その必要がなくなりました。

5
6
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6