はじめに
ある仕事で「HH:MM:SS.FFF」形式でログに出力された、ある範囲の経過時間を秒に変換したかったため、Excelを使用することにしました。
しかし、「HH:MM:SS.FFF」形式の経過時間(シリアル値)から「S.FFF」形式の秒に変換する方法の解決に苦労しました。
そこで、Excelにてシリアル値から秒に変換する方法を本記事にまとめておきたいと思います。
概要
以下の方法でシリアル値から秒に変換することができます。
やりたいこと
Excelにて「HH:MM:SS.FFF」形式の開始時刻と終了時刻から「S.FFF」形式の経過時間(秒)を求めたい。
HH ⇒ 時間 MM ⇒ 分 SS ⇒ 秒 FFF ⇒ ミリ秒
やったこと
- 「HH:MM:SS.FFF」形式の終了時刻から開始時刻を減算し、経過時間を求める。
- 経過時間に24×60×60を乗算し、シリアル値から秒に変換する。
- まるめ誤差があるため、ROUND関数で小数点第3位未満を四捨五入する。
<式> 1. 終了時刻「シリアル値」-開始時刻「シリアル値」=経過時間「シリアル値」 2. 経過時間「シリアル値」×24×60×60 =経過時間「誤差あり秒」 3. ROUND(経過時間「誤差あり秒」,3) =経過時間「秒」
※シリアル値の詳細を知りたい方は、以下をご覧ください。
シリアル値について
Excelでは、時間はそれぞれ次のようにシリアル値で管理されています。
時間 | シリアル値(式) | シリアル値(値) |
1日 | 1 | 1 |
1時間 | 1/24 | 0.04166666666666666666666666666667 |
1分 | 1/24/60 | 0.0006.9444444444444444444444444444444 |
1秒 | 1/24/60/60 | 0.00001.1574074074074074074074074074074 |
このシリアル値を理解することで、スムーズに時間の変換ができるようになります。
計算式を使って時間と「時、分、秒」の変換
計算式を使って、次の変換をやってみます。
- 時間を「時、分、秒」に変換
- 「時、分、秒」を時間に変換
時間を「時、分、秒」に変換
時間を、それぞれ「時」、「分」、「秒」の単位に、変換してみます。
- 「時」単位に変換:時間×24
- 「分」単位に変換:時間×24×60
- 「秒」単位に変換:時間×24×60×60
という感じで、変換できます。
「時、分、秒」を時間に変換
次は、先ほどとは逆で、「時、分、秒」を時間に変換してみます。
次のように計算をすると、時間に変換することができます。
- 「時」単位の数値÷24
- 「分」単位の数値÷24÷60
- 「秒」単位の数値÷24÷60÷60
という感じです。
おわりに
以上がExcelの時刻のシリアル値を秒に変換する方法です。
この方法を使えば簡単にシリアル値から秒数への変換が可能です。