Excelで勤務時間、作業時間、機械の稼働時間などを管理していると、24時間を超えた合計時間が0時台に戻ってしまうことがあります。
これはTIME関数の計算ミスではなく、時間の表示形式が通常の時計表示になっていることが主な原因です。
TIME関数は時・分・秒をまとめて時刻に変換できる便利な関数ですが、24時間以上の時間を扱う場合は数式と表示形式をセットで設定することが重要になります。
TIME関数の基本式
=TIME(時,分,秒)
24時間以上の合計を表示する書式
[h]:mm または [h]:mm:ss
この記事ではTIME関数の基本から、25時間や49時間などの累計時間を正しく表示する方法、計算時の注意点まで詳しく解説します。
TIME関数で24時間以上を表示する設定
| 開始時刻 | 終了時刻 | 作業時間 | 累計時間 |
|---|---|---|---|
| 9:00 | 18:00 | 9:00 | 9:00 |
| 8:00 | 17:00 | 9:00 | 18:00 |
| 7:00 | 16:00 | 9:00 | 27:00 |
それではまず、TIME関数で24時間以上の時間を正しく表示するための設定について解説していきます。
結論として、24時間を超える合計時間を表示したいセルには、ユーザー定義の表示形式として[h]:mmを指定します。
角括弧を付けないh:mmでは、Excelが時間を一日の中の時刻として扱うため、24時間ごとに表示が戻ります。
TIME関数の基本構文
TIME関数は、時・分・秒を別々の数値で指定し、Excelが認識できる時刻データを作成する関数です。
=TIME(時,分,秒)
例として、午前9時30分を作成する数式は =TIME(9,30,0) です。
引数の時には時間、分には分、秒には秒を入力します。
セルA2に時間、B2に分、C2に秒が入っている場合は、=TIME(A2,B2,C2) のようにセル参照を使えます。
TIME関数の結果は画面上では9:30のように見えますが、内部では一日を1とする小数値として保存されています。
たとえば12:00は0.5、6:00は0.25として扱われる仕組みです。
この仕組みを理解すると、時間の足し算や平均、残業時間の算出も扱いやすくなります。
表示形式に角括弧を付ける手順
合計時間を入れたセルを選択し、Ctrlキーと1キーを押してセルの書式設定画面を開きます。
表示形式タブからユーザー定義を選び、種類の入力欄に [h]:mm と入力します。
秒も表示したい場合は [h]:mm:ss と設定しましょう。
hを角括弧で囲むことが、24時間を超えた時間を累計として表示するための決め手です。
設定後に合計が27時間なら27:00、49時間30分なら49:30と表示されます。
一方でh:mmのままでは27時間が3:00に見えるため、長時間の実績管理では誤読につながるかもしれません。

【操作のポイント】表示形式を変更しても元の計算値は変わりません。
24時間超過時に時刻が戻る理由
Excelの標準的な時刻表示は、午前0時から午後11時59分までを一日として繰り返す形式です。
そのため、24時間は0:00、25時間は1:00、48時間は0:00として表示されます。
これはExcelが誤っているのではなく、時計として表示する書式の性質によるものです。
勤務実績やプロジェクト工数では、時計の時刻ではなく経過時間を確認したい場面が多いでしょう。
経過時間では、25時間を1:00と読むのではなく、25:00と読める状態が必要です。
この目的に合う書式が[h]:mmです。
数式が正しくても見た目だけが不正確な場合があるため、計算結果と表示形式を分けて確認する習慣を持つと安心です。
TIME関数の引数と繰り上げ計算
| 数式 | 表示形式 | 表示結果 |
|---|---|---|
| =TIME(10,45,0) | h:mm | 10:45 |
| =TIME(10,75,0) | h:mm | 11:15 |
| =TIME(10,0,90) | h:mm:ss | 10:01:30 |
続いては、TIME関数の引数と繰り上げの考え方を確認していきます。
TIME関数は分が60以上、秒が60以上でも計算でき、時間へ自動的に繰り上げます。
時・分・秒の指定方法
TIME関数の時には0から23まで、分と秒には0から59までを入れるのが基本です。
たとえば =TIME(14,20,15) は14時20分15秒を返します。
時刻を直接入力するよりも、時間・分・秒が別の列に分かれたデータを統合するときに役立ちます。
配送時間の入力表、製造工程の作業ログ、コールセンターの通話時間などでは、数値を列ごとに保存するケースがあります。
TIME関数なら各列の値を一つの時間データへ変換できます。
セルに入力した数値が文字列になっている場合は、VALUE関数や数値への変換が必要になることがあります。
表示が左寄せになっている、計算しても値が変わらないといったときは、データ形式を確認しましょう。
分と秒が60を超える場合
=TIME(8,90,0) と入力すると、90分は1時間30分として処理され、結果は9:30になります。
同様に =TIME(8,0,120) では、120秒が2分へ繰り上がり、8:02:00となります。
繰り上げの考え方
=TIME(8,90,120)
90分は1時間30分、120秒は2分です。
結果は9:32:00になります。
この性質は、分単位や秒単位で受け取った数値を時刻に整える際に便利です。
ただし、入力値の異常を検出したい集計表では、自動繰り上げによって誤入力を見逃す可能性もあります。
データの品質を重視する表では、入力規則で分と秒を0から59に制限する方法も検討しましょう。
【操作のポイント】繰り上げは便利ですが、入力ミスの確認も忘れないことが大切です。
時間が24を超える場合の注意点
TIME関数で =TIME(25,0,0) と指定すると、結果は翌日の1:00に相当する値になります。
つまり、TIME関数そのものは25時間という経過時間を保持するのではなく、24時間を一周した時刻を作る関数です。
24時間以上の所要時間を直接作る用途では、TIME関数単独より時間を24で割る計算が向いています。
25時間を時間値として作る数式
=25/24
分も含めて25時間30分を作る数式
=(25*60+30)/(24*60)
この数式を入力したセルに[h]:mmを設定すると25:00や25:30と表示できます。
TIME(25,0,0) は1:00になり、=25/24 は表示形式によって25:00にできるという違いを押さえましょう。
勤務時間と作業時間の計算式
| 日付 | 開始 | 終了 | 休憩 | 実働時間 |
|---|---|---|---|---|
| 8月1日 | 9:00 | 18:00 | 1:00 | 8:00 |
| 8月2日 | 9:00 | 19:30 | 1:00 | 9:30 |
| 合計 | 17:30 |
続いては、勤務表や作業記録でTIME関数を使う計算式について解説していきます。
開始時刻と終了時刻の差から実働時間を求め、休憩時間を引く方法が基本になります。
開始時刻と終了時刻の差
1行目がヘッダーで、B列に開始時刻、C列に終了時刻、D列に休憩時間、E列に実働時間を入力する表を想定します。
E2には =C2-B2-D2 と入力すると、終了時刻から開始時刻と休憩時間を差し引けます。
実働時間の計算式
=C2-B2-D2
E列の表示形式は [h]:mm に設定します。
9:00から18:00までで休憩が1:00なら、計算結果は8:00です。
休憩時間を30分として扱う場合は、D2へ0:30と入力するか、=TIME(0,30,0) を利用します。
入力する時刻はコロンを含む9:00のような形式にすると、Excelが時間として認識しやすくなります。
日付をまたがない通常の勤務では、単純な引き算だけで対応できます。
日付をまたぐ深夜勤務の計算
22:00に始まり翌朝6:00に終わる勤務では、終了時刻だけを引くと負の値になります。
この場合は =MOD(C2-B2,1)-D2 という数式を使うと、日付またぎでも正の勤務時間を求められます。
深夜勤務の計算式
=MOD(C2-B2,1)-D2
MOD関数は差を1日単位で調整します。
22:00から翌6:00まで、休憩が1:00なら結果は7:00です。
MOD関数の1は24時間を表すExcel内部の一日分の値です。
日付も別列に記録している場合は、終了日時から開始日時を直接引く方法のほうが分かりやすいこともあります。
勤務時間のルールに深夜割増や翌日扱いがある場合は、計算式とは別に会社の規定も確認してください。
【操作のポイント】深夜勤務を含む表では、通常勤務と深夜勤務の両方で数式を試算します。
SUM関数による月間合計
日ごとの実働時間がE2からE32に入力されている場合、合計欄には =SUM(E2:E32) と入力します。
月間の勤務時間が160時間を超える場合でも、合計セルの書式を[h]:mmにすれば160:00のように表示できます。
書式がh:mmのままでは、160時間が16:00などに見えてしまいます。
合計セルだけでなく、途中の週計や部署計にも[h]:mmを設定することが実務上のポイントです。
平均時間を求める場合は =AVERAGE(E2:E32) を使えます。
平均セルにはh:mmを設定すると、一日あたりの平均勤務時間を時間と分で確認できます。
24時間超過時間の表示形式
| 数値の内容 | h:mm表示 | [h]:mm表示 |
|---|---|---|
| 27時間 | 3:00 | 27:00 |
| 49時間30分 | 1:30 | 49:30 |
| 100時間15分 | 4:15 | 100:15 |
続いては、24時間超過時間を見やすくする表示形式について確認していきます。
作業時間の合計を扱う場合、書式の選択だけで表の読みやすさと集計の信頼性が大きく変わります。
ユーザー定義書式の入力手順
対象セルを選択して右クリックし、セルの書式設定を選択します。
表示形式タブの分類でユーザー定義をクリックし、種類に [h]:mm を入力します。
秒単位の記録が必要なときは [h]:mm:ss を指定します。
よく使う時間表示形式
[h]:mm は累計の時間と分を表示します。
[h]:mm:ss は累計の時間・分・秒を表示します。
h:mm AM/PM は一日の中の時刻を表示します。
月間工数のように時間だけを表示したい場合は、[h] と指定する方法もあります。
ただし、分を省略すると端数の判断が難しくなるため、一般的には[h]:mmが使いやすいでしょう。
負の時間と####の表示
時間の引き算で結果が負になると、Excelでは####と表示されることがあります。
列幅が狭い場合にも####が表示されるため、まず列の幅を広げて確認しましょう。
列幅を広げても表示が変わらない場合は、終了時刻より開始時刻が遅い、または休憩時間が長すぎる可能性があります。
深夜勤務のケースでは、前述のMOD関数を使うことで負の時間を回避できます。
####は数式エラーとは限らず、表示できない状態を知らせる記号です。
セルをクリックして数式バーを確認すると、実際にどのような値が入っているか判断しやすくなります。
【操作のポイント】####が出たら列幅、数式、開始・終了時刻の順に確認します。
小数時間への換算方法
作業時間を8:30ではなく8.5時間のように小数で集計したい場面もあります。
時間データがE2にある場合、=E2*24 と入力すると時間数へ換算できます。
時間を小数へ換算する数式
=E2*24
8:30は8.5として計算されます。
このセルの表示形式は標準または数値に設定します。
給与計算や請求書で小数時間を利用する場合は、丸め方を事前に決める必要があります。
15分単位で切り上げる、1分単位で計算するなどの運用によって、ROUND関数やCEILING関数を組み合わせることもあります。
時間表示と小数時間は同じ値を別の形で見せているため、用途に合わせて使い分けましょう。
TIME関数と関連関数の使い分け
| 目的 | 主な関数 | 使用例 |
|---|---|---|
| 時刻を作る | TIME | =TIME(9,30,0) |
| 時間部分を取り出す | HOUR | =HOUR(B2) |
| 合計する | SUM | =SUM(E2:E31) |
続いては、TIME関数と組み合わせやすい関連関数について解説していきます。
目的に合った関数を選ぶことで、時刻の作成、時間の抽出、合計時間の計算を整理できます。
HOUR・MINUTE・SECOND関数
HOUR関数は時刻から時間だけを取り出し、MINUTE関数は分、SECOND関数は秒を取り出します。
たとえばB2に14:35:20が入っている場合、=HOUR(B2) は14、=MINUTE(B2) は35、=SECOND(B2) は20を返します。
TIME関数が時刻を組み立てる関数であるのに対し、これらの関数は時刻を分解する関数です。
時刻データを別の形式へ整える作業では、両方を組み合わせることがあります。
たとえば開始時刻の時間だけで勤務区分を決めたい場合、HOUR関数をIF関数の条件に利用できます。
時刻の見た目ではなく、内部の時間・分・秒を数値として判定したいときに便利です。
NOW・TODAY関数との違い
NOW関数は現在の日付と時刻を自動で返し、TODAY関数は現在の日付だけを返します。
TIME関数は現在時刻を取得する関数ではなく、指定した数値から任意の時刻を作る関数です。
たとえば現在の日付に9時を組み合わせたい場合は、=TODAY()+TIME(9,0,0) と入力できます。
今日の午前9時を作る数式
=TODAY()+TIME(9,0,0)
セルの表示形式を yyyy/m/d h:mm に設定すると日時を確認できます。
日付と時刻はExcelでは加算できる値であり、日付にTIME関数の結果を足すと日時になります。
締切日時、予約日時、更新時刻の管理に応用できる考え方です。
【操作のポイント】現在時刻の取得にはNOW、任意時刻の作成にはTIMEを使い分けます。
TEXT関数による表示の文字列化
TEXT関数は数値や日時を指定した書式の文字列に変換する関数です。
たとえばE2に合計時間が入っている場合、=TEXT(E2,”[h]:mm”) と入力すると、25:30のような文字列を作れます。
メール本文用の文言や、別の文字列と連結する帳票では役立ちます。
ただしTEXT関数の結果は文字列なので、そのままでは時間として足し算できません。
計算用のセルは時間値のまま保持し、見せるためのセルだけTEXT関数を使うと管理しやすくなります。
表示形式を変えるだけで済む表では、TEXT関数を使わずセルの書式設定で対応する方法が基本です。
まとめ 24時間以上を正しく表示するエクセルのTIME関数
| 確認項目 | 設定内容 |
|---|---|
| TIME関数 | =TIME(時,分,秒) |
| 24時間以上の表示 | [h]:mm |
| 深夜勤務の計算 | =MOD(終了-開始,1)-休憩 |
最後に、24時間以上を正しく表示するエクセルのTIME関数についてまとめます。
TIME関数は、時・分・秒から時刻を作成したいときに使う関数です。
基本式は =TIME(時,分,秒) であり、分や秒が60を超えた場合には自動的に繰り上げられます。
一方で、TIME関数へ25時間などを直接指定すると、翌日の時刻として扱われます。
24時間以上の経過時間を表示したいときは、時間を24で割る方法や時間の合計を使い、セルの表示形式を[h]:mmへ変更します。
勤務時間、残業時間、月間工数、作業実績の集計では、合計セルの書式設定が特に重要です。
通常のh:mmでは24時間ごとに表示が戻るため、合計値が正しく見えないことがあります。
日付をまたぐ勤務ではMOD関数を使い、負の時間や####の表示を避けましょう。
TIME関数、SUM関数、HOUR関数、TEXT関数の役割を使い分けることで、時間計算の表をより正確で見やすいものにできます。