15
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Microsoft Power AutomateAdvent Calendar 2024

Day 4

Power Automate for desktop での Excel のシリアル値(時刻)の扱い

Last updated at Posted at 2024-12-03

はじめに

業務において、Power Automate for desktop で Excel を操作する機会は多いと思います。
Excel から時刻の情報を読み取ると、Power Automate for desktop ではシリアル値として保持されます。
これを、時刻の形式に変換する方法を記載します。

image.png

Power Automate for desktop でシリアル値から時刻を求める

以下のアクションで実現可能です
image.png

① Datetime型変数を生成

変換の準備として、DateTiem型変数を用意します。

image.png

『変数の設定』アクションで、

%D'1900/01/01 00:00:00'%

をセットします。
(日付部分 "1900/01/01" は、任意の日で大丈夫です)

② シリアル値を秒に変換

『数値の切り捨て』アクションを利用します。

Excel は、時刻を24時を 1 として保持します。
ですので、以下のようにシリアル値で管理されます。

 時間:1/24
 分 :1/24/60
 秒 :1/24/60/60

Power Automate for desktop で読み取った値に * 86400(24 × 60 × 60 )することで、秒に変換できます。
小数点以下は、四捨五入しておきます。

image.png

③ 日時データに秒を追加

② で求めた秒数を、① の DateTiem型変数に追加します。
『加算する日付』アクションを利用します。

image.png

④ 時刻の表示形式に変換

『datetimeをテキストに変換』アクションで、時刻の形式を整えます。

カスタム形式は、"T" を指定すると、『 : 』(コロン)区切りの24時制日付に変換できます。

image.png

まとめ

Excel から読み取った時刻のデータを、Power Automate for desktop で扱う場合は、86400 で乗算して秒数に変換し Datetime型で扱うことで、表示形式を変換可能です。

もっとスマートに実現できる方法をご存知でしたら、是非ご教示ください。

15
3
0

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
15
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?