【Excel】
「秒数」を「時分秒(hh:mm:ss)」に
変換して表示する時間計算の方法
約~分
(約文字)
2019-01-18 2019-05-20
【Excel】秒数を時分秒に変換し表示する時間の計算
エクセルで作業工数の時間やスポーツのタイムを計算をする場合、秒で計算し、後から「何時間何分何秒」で表示させたいことがあります。ここでは秒数を計算して何時何分何秒やhh:mm:ddの形式に変換して表示する方法を解説します。
この記事の目次
エクセルで作業工数の時間やスポーツのタイムを計算をする場合、秒で計算し、後から「何時間何分何秒」で表示させたいことがあります。ここでは秒数を計算して何時何分何秒やhh:mm:ddの形式に変換して表示する方法を解説します。
1.エクセルは「24時間=1」と認識している
秒数を時分秒に変換する前に知っておきたいエクセルの時間に関する知識を紹介します。
エクセルは一日を”1”として計算します。
エクセルは日付や時刻に関して「シリアル値」で管理しています。具体的に時分秒は、以下のようなシリアル値(小数点以下の値)として管理しています。
時分秒 | シリアル変換計算 | シリアル値 |
---|---|---|
1秒 | =1秒÷(24hour×60min×60sec) | 0.000011574 |
10秒 | =10秒÷(24hour×60min×60sec) | 0.000115741 |
20秒 | =20秒÷(24hour×60min×60sec) | 0.000231481 |
30秒 | =30秒÷(24hour×60min×60sec) | 0.000347222 |
40秒 | =40秒÷(24hour×60min×60sec) | 0.000462963 |
50秒 | =50秒÷(24hour×60min×60sec) | 0.000578704 |
60秒(1分) | =60秒÷(24hour×60min×60sec) | 0.000694444 |
10分 | =10分÷(24hour×60min) | 0.006944444 |
20分 | =20分÷(24hour×60min) | 0.013888889 |
30分 | =30分÷(24hour×60min) | 0.020833333 |
40分 | =40分÷(24hour×60min) | 0.027777778 |
50分 | =50分÷(24hour×60min) | 0.034722222 |
60分(1時間) | =60分÷(24hour×60min) | 0.041666667 |
3時間 | =3時間÷24hour | 0.125000000 |
6時間 | =6時間÷24hour | 0.250000000 |
9時間 | =9時間÷24hour | 0.375000000 |
12時間 | =12時間÷24hour | 0.500000000 |
18時間 | =18時間÷24hour | 0.750000000 |
24時間 | =24時間÷24hour | 1.000000000 |
この中で覚えておきたいのが一日の秒数である24houe×60min×60sec=86,400秒です。 時間の計算をする場合に頻繁に使うことがありますので、頭の片隅に置いておくといいですが、86400を覚えるのは難しいと思います。 大事なのは一日の秒数は24時間×60分×60秒で計算できることを知ることが大事です。
2.秒を時分秒に変換する基本的な手順
ではここからが本題。秒を時分秒に変換する基本的な手順を紹介します。
手順① シリアル値に変換する
秒単位で入力された値を、一日の秒数(86400)で割り、シリアル値に変換する。
手順② 表示形式を指定する
セルの表示形式を「hh時間mm分ss秒」「hh:mm:ss」等の表示したい形式を指定する。
これで秒を時分秒に変換することが出来ます。この手順は一つの関数で指定することが出来ますので、その関数の指定方法を以下で紹介します。
3.秒を様々な形式で表示させる指定方法
ここで説明する数式は、変換したい秒数の値がA1セルに入っている場合を想定しています。 このセル番地は、あなたが作業しているエクセルのシートに合わせ、適切なセル番地に修正してご利用ください。
秒を時分秒に変換する
=TEXT(A1/86400,"hh時間mm分ss秒")
又は
=TEXT(A1/86400,"hh:mm:ss")
秒を時分に変換する(秒は切り捨て)
=TEXT(A1/86400,"hh時間mm分")
又は
=TEXT(A1/86400,"hh:mm")
秒を時に変換する(分秒は切り捨て)
=TEXT(A1/86400,"hh時間")
又は
=TEXT(A1/86400,"hh")
秒を分秒に変換する
=TEXT(A1/86400,"mm分ss秒")
又は
=TEXT(A1/86400,"mm:ss")
4.単位時間を超える時間を扱う方法
上記で説明した指定方法では実は問題が発生します。それは「24時間を超える場合」「60分を超える場合」「60秒を超える場合」に、超えた値が正確に表示できない事が発生します。 そこで、その超えた値を正確に表示させる方法を解説します。
24時間を超える時間を扱う方法
例えば25時間(90000秒)を上記で説明した「hh時間mm分ss秒」(又は「hh:mm:ss」)の表示形式を指定すると、「hh時間mm分ss秒」(又は「01:00:00」)と表示されてしまいます。 これは時刻の表示形式で「hh」(又は「h」)を指定しても24時間までしか扱えないからです。
24時間を超える時間を扱うには、セルの表示形式を「[hh]」(又は「[h]」)と指定します。 今回の場合「[hh]時間mm分ss秒」(又は「[hh]:mm:ss」)と指定すれば、25時間を「25時間00分00秒」(又は「25:00:00」)と表示することができます。
60分を超える時間を扱う方法
例えば70分(4200秒)を上記で説明した「hh時間mm分ss秒」(又は「hh:mm:ss」)の表示形式を指定すると、「hh時間mm分ss秒」(又は「10:00」)と表示されてしまいます。 これは時刻の表示形式で「mm」(又は「m」)を指定しても60分までしか扱えないからです。
60分を超える分数を扱うには、セルの表示形式を「[mm]」(又は「[m]」)と指定します。 今回の場合「[mm]分ss秒」(又は「[mm]:ss」)と指定すれば、70分を「70分00秒」(又は「70:00」)と表示することができます。
60秒を超える時間を扱う方法
例えば70秒を上記で説明した「ss秒」(又は「ss」)の表示形式を指定すると、「10秒」(又は「10」)と表示されてしまいます。 これは時刻の表示形式で「ss」(又は「s」)を指定しても60秒までしか扱えないからです。
60秒を超える秒数を扱うには、セルの表示形式を「[ss]」(又は「[s]」)と指定します。 今回の場合「[ss]」秒(又は「[ss]」)と指定すれば、70秒を「70秒」(又は「70」)と表示することができます。
5.一秒以下の値の表示形式を設定する
スポーツで100m×4=400mリレーで、10分の1秒、100分の1秒、1000分の1秒などの小数点以下の秒を表す方法は以下の様に指定します。
表示範囲 | 指定方法 |
---|---|
10分の1秒まで | [ss].0 |
100分の1秒まで | [ss].00 |
1000分の1秒まで | [ss].000 |
(小数点以下は1000分の1秒まで表示が可能です。10000分の1秒より小さい値は今回する方法ではエクセルが未対応です)
6.エクセルに時間を入力する場合の注意点
エクセルのセルに「12:34」と入力すると「12時34分」「12分34秒」どちらになるか?
答えは12時34分です。
これをエクセルに「12分34秒」と認識させるには「00:12:34」と時分秒を指定した形で入力する必要があります。
この記事は以上です。最後までご覧頂き、ありがとうございました。