Excelで時間を分・秒に変換する方法|数式×1440と関数の使い分け【図解】
Excelで「1:30:00」のような時間データを「90分」や「5400秒」に変換したい場面は多くあります。勤怠管理や作業時間の集計など、業務でExcelを使っていると時間の単位変換が必要になるケースは少なくありません。
ところが、Excelの時間データは私たちが直感的に思う「時・分・秒」の形式とは異なる仕組みで管理されています。この仕組みを知らないままセルを参照して計算すると、結果が意図しない数値になったり、日付として表示されてしまったりといったトラブルが起こります。
本記事では、Excelの時間データの基本的な仕組み(シリアル値)から、時間を分・秒に変換する具体的な数式、さらに逆変換やよくあるトラブルの対処法まで、初心者の方にもわかりやすく解説します。
- Excelの時間データの仕組み(シリアル値)
- 時間→分、時間→秒に変換する数式
- HOUR関数・MINUTE関数・SECOND関数の使い方
- 表示形式の変更で見た目だけを変える方法
- 時間計算でよくあるエラーと対処法
Excelの時間データの仕組み(シリアル値)
Excelで時間を正確に変換するには、まずExcelが時間をどのように管理しているかを理解しておく必要があります。この仕組みを知っておくだけで、変換数式の意味がスッと理解できるようになります。
時間は「1日=1」の小数で管理されている
Excelでは、日付・時刻のデータを「シリアル値」という数値で管理しています。シリアル値の基本ルールは 「1日=1」 です。つまり、24時間がちょうど「1」という数値に相当します。
このルールをもとにすると、各時間のシリアル値は次のようになります。
- 12時間(正午)= 0.5
- 6時間 = 0.25
- 1時間 = 約0.041667(1÷24)
- 1分 = 約0.000694(1÷1440)
- 1秒 = 約0.0000116(1÷86400)
たとえばセルに「1:30:00」と入力されている場合、その実態は 0.0625(=90分÷1440)というシリアル値です。セルの書式を「標準」に変更すると、この小数が表示されて確認できます。
Excelで時間の入ったセルを「標準」表示に変えると、0〜1の小数が現れます。これがシリアル値の正体です。この小数に1440(1日の分数)や86400(1日の秒数)を掛けることで、分・秒への変換が成立します。
24時間を超える時間の扱い
通常の時刻表示(「13:00:00」など)では問題ありませんが、勤怠管理などで 24時間を超える合計時間 を扱う場合は注意が必要です。
たとえば「25:30:00」(25時間30分)のような値は、シリアル値では「1」を超える数値になります。この場合、通常の時刻書式(h:mm)では「1:30:00」と表示されてしまい、正しく表示されません。
24時間を超える時間を正しく表示するには、セルの書式を [h]:mm:ss に設定します。角括弧 [ ] で囲むことで、Excelは時間部分を日付に繰り上げず、そのまま表示します。
- 通常の書式 h:mm:ss → 25:30:00 が「1:30:00」と表示されてしまう
- 正しい書式 [h]:mm:ss → 25:30:00 がそのまま「25:30:00」と表示される
変換計算自体はシリアル値に対して行うため、書式の設定とは独立しています。ただし変換後の数値が想定と異なると感じたときは、元データの書式が [h]:mm:ss になっているか確認してみてください。
時間を「分」に変換する方法
時間のデータを分単位の数値に変換する方法は複数あります。目的やデータの形式に応じて使い分けてください。ここでは代表的な3つの方法を解説します。
数式:=セル×1440(最もシンプルな方法)
最も基本的で確実な変換方法は、時間のシリアル値に 1440 を掛けることです。1440は1日を分で表した数(24時間×60分)です。
=A1*1440(A1に時間データが入っている場合)
たとえばA1に「1:30:00」(1時間30分)が入っている場合、=A1*1440 の結果は 90 になります。
計算例をいくつか確認しておきましょう。
- 0:30:00(30分)→ 0.5 × 1440 = 30(分)
- 1:00:00(1時間)→ 約0.041667 × 1440 = 60(分)
- 2:15:00(2時間15分)→ 約0.09375 × 1440 = 135(分)
注意点として、数式を入力したセルに時刻書式が自動適用されてしまい、結果が「0:00」のように表示されることがあります。その場合は、そのセルの書式を「標準」または「数値」に変更してください。
- 結果のセルを選択する
- 右クリック →「セルの書式設定」を開く
- 「表示形式」タブ →「標準」または「数値」を選ぶ
- OKをクリックして確定する
HOUR関数・MINUTE関数を組み合わせて変換する方法
HOUR関数とMINUTE関数を組み合わせることで、時間を分単位に変換することもできます。この方法は計算の仕組みが直感的にわかりやすいのが特長です。
=HOUR(A1)*60+MINUTE(A1)HOUR(A1) は時間部分(例:1時間30分なら「1」)を、MINUTE(A1) は分部分(例:1時間30分なら「30」)を取り出します。それぞれを組み合わせることで「1×60+30=90分」という計算になります。
各関数の役割は次の通りです。
- HOUR(シリアル値):時間部分(0〜23)を整数で返す
- MINUTE(シリアル値):分部分(0〜59)を整数で返す
- SECOND(シリアル値):秒部分(0〜59)を整数で返す
なお、秒も含めて厳密に変換したい場合は次の数式を使います。
=HOUR(A1)*60+MINUTE(A1)+SECOND(A1)/60ただし、この関数を使った方法には注意点があります。HOUR関数は0〜23の値しか返さないため、24時間を超える時間データ(例:勤怠の合計時間)には対応できません。そのような場合は前述の =セル×1440 を使うのが確実です。
表示形式[mm]で見た目だけを分に変える方法
数式を使わず、セルの表示形式を変更するだけで、見た目の表示を分単位に変えることもできます。この方法は元のシリアル値を変えずに表示だけを変えたい場合に便利です。
- 時間データのセルを選択する
- 右クリック →「セルの書式設定」を開く
- 「表示形式」タブ →「ユーザー定義」を選ぶ
- 「種類」の入力欄に [mm] と入力する
- OKをクリックして確定する
[mm] の角括弧は「繰り上がりをせずにそのまま表示する」という意味で、24時間を超える場合でも正しく分単位の合計値を表示できます。
ただし、この方法はあくまで「表示形式の変更」です。セルの実際の値はシリアル値のままなので、変換後の数値をSUM関数などで集計したい場合は、数式による変換(=セル×1440)を使う必要があります。
表示形式の変更は「見た目だけを変える」操作です。そのセルを他の計算に使いたい場合は、数式で変換した別のセルを参照するようにしましょう。
時間を「秒」に変換する方法
動画の再生時間や処理速度の計測など、秒単位での数値が必要な場面もあります。時間を秒に変換する方法を解説します。
数式:=セル×86400
時間のシリアル値に 86400 を掛けると、秒単位の数値が得られます。86400は1日を秒で表した数(24時間×60分×60秒)です。
=A1*86400
(A1に時間データが入っている場合)
計算例を確認しておきましょう。
- 0:00:30(30秒)→ 約0.000347 × 86400 = 30(秒)
- 0:01:00(1分)→ 約0.000694 × 86400 = 60(秒)
- 1:30:00(1時間30分)→ 0.0625 × 86400 = 5400(秒)
分への変換と同様に、結果のセルが時刻書式で表示される場合は「標準」または「数値」に書式変更してください。
HOUR・MINUTE・SECOND関数を組み合わせた方法
関数を使って秒単位に変換する場合は、HOUR・MINUTE・SECONDの3つを組み合わせます。
=HOUR(A1)*3600+MINUTE(A1)*60+SECOND(A1)
A1が「1:30:45」(1時間30分45秒)の場合、計算は「1×3600+30×60+45=5445(秒)」となります。
この方法も24時間を超えるデータには対応できないため、合計時間のような場合は =セル×86400 を使うのが安全です。
HOUR・MINUTE・SECOND関数を使った数式は、計算の内訳が一目でわかるため、初めてExcelの時間変換を学ぶ方や、チームで数式を共有・管理する場面で役立ちます。スピードを重視するなら ×86400 の一行、可読性を重視するなら関数の組み合わせ、と使い分けましょう。
分・秒を「時間」に戻す方法(逆変換)
外部データや別システムから「分単位」「秒単位」の数値としてデータを受け取り、それをExcelの時間形式に戻したい場面もあります。逆変換の方法も覚えておきましょう。
分→時間:=セル÷1440
「90」のような分単位の数値をExcelの時間形式(シリアル値)に変換するには、1440で割ります。
=A1/1440
(A1に分単位の数値が入っている場合)
変換後のセルの書式を「時刻(h:mm:ss)」または「[h]:mm:ss」に設定すると、時間形式で表示されます。90と入力されたセルに対して =A1/1440 を適用し、書式を時刻にすると「1:30:00」と表示されます。
また、TIME関数を使って分数から時刻を組み立てる方法もあります。
=TIME(0, A1, 0) (A1が分単位の数値の場合)
TIME(時, 分, 秒) の形式で指定します。分に変換したい数値を入れると、自動的にシリアル値へ変換されます。
秒→時間:=セル÷86400
「5400」のような秒単位の数値をExcelの時間形式に変換するには、86400で割ります。
=A1/86400
(A1に秒単位の数値が入っている場合)
5400(秒)を変換すると「0.0625」というシリアル値になり、書式を「時刻」にすると「1:30:00」と表示されます。
秒単位の変換にもTIME関数を使えます。
=TIME(0, 0, A1) (A1が秒単位の数値の場合)
ただし、TIME関数は0〜86399秒(0〜23:59:59)の範囲しか扱えません。24時間を超える秒数には /86400 の方法を使いましょう。
時間変換をVBAで自動化する方法
Excelの時間データの変換処理をVBAマクロで自動化すれば、分・秒単位への一括変換が可能です。
' 時間データを分単位に一括変換するマクロ
Sub 時間変換マクロ()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim i As Long
For i = 2 To 5
Dim timeVal As Double
timeVal = ws.Cells(i, "B").Value
ws.Cells(i, "C").Value = Int(timeVal * 24 * 60)
ws.Cells(i, "D").Value = Int(timeVal * 24 * 3600)
Next i
MsgBox "4件の時間変換が完了しました"
End Sub
Sub 時間変換マクロ()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim i As Long
For i = 2 To 5
Dim timeVal As Double
timeVal = ws.Cells(i, “B”).Value
ws.Cells(i, “C”).Value = Int(timeVal * 24 * 60)
ws.Cells(i, “D”).Value = Int(timeVal * 24 * 3600)
Next i
MsgBox “4件の時間変換が完了しました”
End Sub
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 作業名 | 作業時間 | 分換算 | 秒換算 |
| 2 | データ入力 | 1:30:00 | 90 | 5,400 |
| 3 | 会議 | 0:45:00 | 45 | 2,700 |
| 4 | レポート作成 | 2:15:00 | 135 | 8,100 |
| 5 | メール対応 | 0:20:00 | 20 | 1,200 |
☝ Excelの時間はシリアル値(1日=1)なので×1440で分、×86400で秒に変換できます
時間変換でよくあるトラブルと対処法(FAQ)
Excelの時間変換でつまずきやすいポイントをQ&A形式でまとめました。
Q. 変換結果が日付や「0:00」のように表示される場合は?
A. これは変換結果のセルに「時刻」または「日付」の表示形式が適用されているためです。数式を入力すると、元のセルと同じ書式が自動的に引き継がれることがあります。
対処法は、結果のセルを選択して右クリック →「セルの書式設定」→「標準」または「数値」に変更するだけです。これで正しい数値が表示されます。
Q. 24時間以上の合計時間の計算結果がおかしい場合は?
A. 時刻の表示形式が「h:mm:ss」になっていると、24時間を超えた部分が切り捨てられて表示されます。たとえば合計が「25:30:00」でも「1:30:00」と表示されてしまいます。
対処法は、セルの書式を [h]:mm:ss に変更することです。角括弧で囲むことで、24時間を超えてもそのまま表示されるようになります。変換計算(×1440や×86400)はシリアル値に対して行うため、正しい結果が得られます。
Q. TIME関数とシリアル値の違いは何ですか?
A. TIME関数は「時・分・秒」の整数を引数として渡すと、それに対応するシリアル値を返す関数です。たとえば =TIME(1,30,0) と入力すると、1時間30分に相当するシリアル値「0.0625」が返されます。
つまりTIME関数は「人間が読める形式」から「シリアル値」への変換ツールです。一方、シリアル値はExcelが内部で時刻を管理するための数値そのものです。変換後の計算には常にシリアル値が使われています。
TIME関数の制限として、扱える範囲は0:00:00〜23:59:59(24時間未満)のみです。24時間以上の時間を扱う場合は直接シリアル値を操作する方法(÷1440、÷86400など)を使いましょう。
Q. 勤怠管理で時間を10進法に変換するには?
A. 勤怠計算では「1時間30分=1.5時間」のように10進数で扱いたい場面があります。この変換には =セル×24 を使います。
=A1*24
(A1に時間データが入っている場合)
「1:30:00」のシリアル値(0.0625)に24を掛けると「1.5」が得られます。これで「1.5時間」という10進数表現になります。時給計算などで「時間×単価」を求めるときに非常に役立ちます。
- 0:30:00 → 0.5(時間)
- 1:00:00 → 1.0(時間)
- 1:45:00 → 1.75(時間)
- 8:30:00 → 8.5(時間)
なお、逆に「1.5(時間)」をExcelの時刻形式に戻すには =A1/24 を使い、書式を「時刻」に設定すれば「1:30:00」と表示されます。
Q. VBAで時間を変換する方法はありますか?
A. ExcelのVBA(マクロ)を使って時間変換を行うことも可能です。大量のデータを一括で変換したい場合や、変換と同時に別の処理を組み合わせたい場合に有効です。
VBAではワークシート関数と同様にシリアル値を扱えます。セルの値に1440や86400を掛けることで、分・秒への変換ができます。また、Hour()・Minute()・Second() といったVBA組み込み関数を使って各部分を取り出すことも可能です。
VBAの詳細については別途専門記事での解説が必要になりますが、基本的な考え方はワークシートでの変換と同じです。シリアル値に対して適切な係数を掛け/割ることで変換できます。
まとめ:Excelの時間変換をマスターしよう
Excelの時間変換は、シリアル値の仕組みを理解してしまえば非常にシンプルです。覚えておきたいポイントを整理しておきましょう。
- Excelの時間は「1日=1」のシリアル値で管理されている
- 時間→分の変換:=セル×1440
- 時間→秒の変換:=セル×86400
- 時間→10進数(時間)の変換:=セル×24
- 分→時間の逆変換:=セル÷1440
- 秒→時間の逆変換:=セル÷86400
- 24時間超の表示には書式 [h]:mm:ss を使う
- 変換結果が日付・時刻表示になる場合は書式を「標準」に変更する
時間変換の知識は勤怠管理・プロジェクト管理・データ集計など幅広い場面で役立ちます。本記事で紹介した数式を実際のデータで試しながら、自分のスキルとして定着させていきましょう。
Excelの他の便利な機能についても、以下の関連記事で詳しく解説しています。あわせてご覧ください。



