Excelで勤務時間、作業時間、開始時刻から終了時刻までの差などを計算すると、表示が思った数値にならないことがあります。
これはExcelが時間を単なる文字列ではなく、1日を1とする小数のシリアル値として扱っているためです。
時間の足し算と引き算は基本的な数式で行えますが、24時間を超える合計時間や日付をまたぐ夜勤では、数式だけでなく表示形式の設定が結果を左右します。
この記事では、時間計算の基本、足し算、引き算、表示形式、エラーを防ぐ方法までをサンプル付きで解説します。
Excelで時間を計算する主なポイント
・時間の足し算はSUM関数または加算記号で行います
・時間の引き算は終了時刻から開始時刻を引きます
・24時間を超える累計は[h]:mmの表示形式を使います
・日付をまたぐ時刻はIF関数やMOD関数で補正します
時間を正しく扱えるようになると、勤怠表や工程管理表、予約表の作成が大きく楽になります。
エクセルで時間を計算する基本操作
それではまず、Excelで時間を数値として扱う基本操作について解説していきます。
| 開始時刻 | 終了時刻 | 経過時間 |
|---|---|---|
| 9:00 | 17:30 | 8:30 |
Excelでは、午前0時から正午までを0から0.5、午後6時を0.75のような小数として内部処理しています。
たとえば12:00は1日の半分なので0.5であり、6:00は0.25です。
セルに9:00と入力した値は、見た目は時刻でも計算可能な数値として保存されています。
時間の内部値の考え方
1日 = 1
12時間 = 0.5
1時間 = 1÷24
1分 = 1÷1440
時刻入力の基本形式
時刻は、セルに9:00、13:30、18:45のように半角のコロンを使って入力します。
入力後にセルを選択し、数式バーを見ると、Excelが時刻として認識しているかを確認できます。
9時だけを入力したい場合は9:00と入力するのが確実です。
9と入力すると単なる整数になる場合があり、時刻の計算には使えません。
午前と午後を区別する必要がある場合は、24時間表記で入力する方法が分かりやすいでしょう。
たとえば午後2時は14:00、午後11時30分は23:30です。
時刻の列では、全てのデータを同じ入力ルールでそろえることが計算ミスの予防になります。
【操作のポイント】時刻は9時ではなく9:00の形式で入力し、文字列ではなく時刻として認識させます。
時間計算に使うセル書式
時刻を入力しても、セルの書式が標準のままだと数値や日付のように表示されることがあります。
その場合は、対象セルを選択してホームタブの表示形式から時刻を選択します。
より細かく設定したいときは、セルを右クリックしてセルの書式設定を開き、表示形式タブの時刻またはユーザー定義を使います。
通常の時刻表示では、h:mmまたはhh:mmがよく使われます。
h:mmは9:05のように時だけを1桁で表示し、hh:mmは09:05のように2桁で表示します。
勤務表や一覧表では、桁を整えやすいhh:mmが便利な場面もあります。
【操作のポイント】時刻を入力する列と計算結果を表示する列は、あらかじめ時刻表示に整えておくと確認しやすくなります。
時間と時間数の違い
Excelでは、9:00のような時刻と、8時間という作業量を区別して考える必要があります。
9:00はある時点を表し、8:00は8時間という長さも表現できますが、セル内では同じ時間形式として扱われます。
一方で、8.5のように小数で時間数を管理する表もあります。
この場合、8.5は8時間30分を意味しますが、8:30とは内部値が異なります。
8:30をそのまま数値の8.5として扱うことはできないため、集計方法に合わせた変換が必要です。
時刻を小数時間へ変換する数式
=A2*24
A2に8:30が入力されている場合、結果は8.5になります。
【操作のポイント】時刻形式と小数時間形式を混在させず、勤怠表などではどちらを使うか最初に決めます。

エクセルで時間を足し算する方法
続いては、複数の時間を合計する足し算の方法を確認していきます。
| 作業内容 | 作業時間 | 合計 |
|---|---|---|
| 資料作成 | 2:30 | 6:45 |
| 会議 | 1:15 | |
| 確認作業 | 3:00 |
時間の合計では、短い時間の足し算と、24時間を超える累計時間の表示を分けて考えることが重要です。
特に月間勤務時間や複数日の工数では、合計が24時間を超えた途端に表示が0時へ戻る問題が起きやすくなります。
加算記号による時間の足し算
2つの時間を足すだけなら、加算記号を使う数式が分かりやすい方法です。
たとえばA2に2:30、B2に1:45が入力されている場合、C2に=A2+B2と入力します。
結果は4:15と表示されます。
数式は必ず半角のイコールから入力しましょう。
Excelでは、セル参照を使った数式にすることで、元の時刻を修正した際にも合計が自動更新されます。
2つの時間を加算する数式
=A2+B2
A2が2:30、B2が1:45なら、結果は4:15です。
休憩時間を除いた実働時間を求める場合でも、作業時間を別々に出してから合計する構成にすると確認しやすくなります。
【操作のポイント】少ないセルを足す場合は加算記号を使うと、数式の意味を後から見直しやすくなります。
SUM関数による複数時間の合計
3つ以上の時間を合計するときはSUM関数が便利です。
たとえばB2からB10までに1日ごとの作業時間が入力されている場合、合計セルに=SUM(B2:B10)と入力します。
範囲指定を使えるため、長い一覧でも数式が簡潔になります。
1行目に見出しがあり、B列の2行目から時間を入力する勤怠表なら、合計対象をB2:B32のように設定できます。
見出し行のB1を合計範囲に含めても文字列は通常無視されますが、データ行だけを指定するほうが管理しやすいです。
複数の時間を合計する数式
=SUM(B2:B10)
空白セルは計算から除外されるため、未入力の日があっても合計できます。
【操作のポイント】日ごとの時間を集計する場合は、加算記号を並べるよりSUM関数で範囲指定します。
24時間を超える合計時間の表示形式
たとえば8時間の勤務を4日分集計すると、合計は32時間です。
しかし、通常のh:mm形式では32時間が8:00と表示されることがあります。
これはExcelが1日を超えた分を日付として処理し、時刻部分だけを表示するためです。
24時間を超える累計を正しく表示したい場合は、合計セルの表示形式を[h]:mmに変更します。
角括弧付きのhを使うことが重要です。
[h]:mmは24時間を過ぎても時間を繰り上げず、32:00や168:30のように表示できます。
合計時間におすすめの表示形式
[h]:mm
分まで表示したい累計時間に適したユーザー定義形式です。
【操作のポイント】日別の時刻はh:mm、週次や月次の合計セルは[h]:mmに設定して使い分けます。

エクセルで時間を引き算する方法
続いては、開始時刻と終了時刻から経過時間を求める引き算を確認していきます。
| 開始時刻 | 終了時刻 | 休憩時間 | 実働時間 |
|---|---|---|---|
| 9:00 | 18:00 | 1:00 | 8:00 |
時間の引き算は、終了時刻から開始時刻を引くのが基本です。
ただし、午後11時から翌朝5時までのように日付をまたぐケースでは、通常の引き算だけでは負の値になり、表示できないことがあります。
終了時刻から開始時刻を引く数式
A列に開始時刻、B列に終了時刻、C列に経過時間を表示する表を作るとします。
1行目が見出しで、2行目にデータを入力する場合、C2には=B2-A2と入力します。
A2が9:00、B2が17:30なら、C2には8:30と表示されます。
終了時刻から開始時刻を引く順番を逆にすると、負の時間になるため注意が必要です。
数式を入力した後、C2の右下にあるフィルハンドルを下方向へドラッグすれば、以降の行にも同じ計算式をコピーできます。
開始時刻と終了時刻の差を求める数式
=B2-A2
A2が開始時刻、B2が終了時刻、C2が経過時間の構成です。
【操作のポイント】引き算は終了時刻のセルを先に書き、開始時刻のセルを後に書く順番を守ります。
休憩時間を差し引く実働時間
勤務時間では、始業から終業までの時間だけでなく、休憩時間を差し引いた実働時間を求めることが一般的です。
A2に開始時刻、B2に終了時刻、C2に休憩時間がある場合、D2には=B2-A2-C2と入力します。
9:00から18:00までで、休憩時間が1:00なら、結果は8:00です。
休憩が45分の場合は0:45と入力します。
45と入力すると45時間または整数として扱われるため、必ず0:45のように入力してください。
休憩時間も開始時刻と同じ時間形式で入力すれば、特別な変換をせずに引き算できます。
休憩時間を除く実働時間の数式
=B2-A2-C2
A2が開始、B2が終了、C2が休憩時間のときに使います。
【操作のポイント】休憩時間が未入力の行でエラーを避けたい場合は、空白を0:00として入力するルールを決めます。
日付をまたぐ夜勤時間の計算
開始時刻が22:00、終了時刻が翌日の5:00のような夜勤では、=B2-A2だけでは正常に表示できない場合があります。
終了時刻の5:00は開始時刻の22:00より小さい値なので、計算結果が負になるからです。
この場合は、終了時刻が開始時刻より小さいときだけ1日を加えるIF関数を使います。
日付またぎの時間を計算する数式
=IF(B2<A2,B2+1,B2)-A2
終了時刻が開始時刻より早い場合に、翌日分の1日を足して計算します。
22:00から5:00の場合、この数式の結果は7:00になります。
より短く書きたい場合は、=MOD(B2-A2,1)という数式も使用できます。
MOD関数は差を1日単位で調整するため、時刻差が負になっても0から24時間の範囲へ変換します。
日付もセルに入力できる勤務表では、日付と時刻を同じセルで管理するほうが夜勤の計算を正確に行えます。
【操作のポイント】夜勤や深夜作業がある表では、通常の引き算ではなくIF関数またはMOD関数をあらかじめ設定します。

エクセルの時間表示形式と小数変換
続いては、時間表示を目的に合わせて変更する方法と、小数時間への変換を確認していきます。
| 時間形式 | 表示例 | 用途 |
|---|---|---|
| h:mm | 8:30 | 通常の時刻と経過時間 |
| [h]:mm | 32:30 | 24時間超の累計 |
| 0.00 | 8.50 | 小数時間の集計 |
時間は見た目の表示を変えるだけで、入力済みの値を別の形で活用できます。
給与計算や工数集計では小数時間、勤務実績の確認では時刻形式というように、目的ごとに表示形式を選びましょう。
セルの書式設定で表示形式を変更する操作
まず、表示形式を変更したいセルまたはセル範囲を選択します。
ホームタブの数値グループにある表示形式の一覧から時刻を選ぶか、右クリックしてセルの書式設定を開きます。
セルの書式設定では表示形式タブを選択し、分類から時刻またはユーザー定義を選びます。
通常の時刻にはh:mm、24時間以上の合計には[h]:mmを入力します。
設定後にOKをクリックすると、元の数式は変えずに表示だけを切り替えられます。
【操作のポイント】数式が正しくても見た目が8:00などに戻る場合は、合計セルの表示形式を最初に確認します。
時間を小数時間へ変換する数式
8時間30分を8.5時間として集計したいときは、時刻に24を掛けます。
たとえばC2に8:30が入力されている場合、D2に=C2*24と入力します。
結果セルの表示形式を標準または数値にすると、8.5と表示されます。
小数第2位まで表示したい場合は、数値の表示形式を0.00に設定します。
分単位の勤務時間を時間単位の単価で計算するときに役立つ計算です。
小数時間を使った料金計算の例
=C2*24*E2
C2が作業時間、E2が1時間あたりの単価なら、時間数と単価を掛けて金額を求められます。
時刻形式の8:30をそのまま単価と掛けると、1日を基準にした小数値で計算されるため、必ず24を掛けます。
【操作のポイント】時刻を給与や費用の計算に使う場合は、時刻に24を掛けて小数時間へ変換してから計算します。
小数時間を時刻へ戻す数式
反対に、8.5のような小数時間を8:30の時刻形式で表示したい場合は、24で割ります。
たとえばA2に8.5が入力されているなら、B2に=A2/24と入力します。
その後、B2の表示形式をh:mmに変更すると8:30と表示されます。
小数時間から時間と分を別のセルへ分けたい場合にも、この考え方を利用できます。
時間の端数を丸めるときはROUND関数を組み合わせることも可能です。
小数時間を時刻に変換する数式
=A2/24
結果セルをh:mmに設定すると、8.5は8:30として表示されます。
【操作のポイント】小数時間を時刻に戻した後は、計算式ではなく結果セルの表示形式をh:mmへ変更します。
エクセルの時間計算エラーと対処法
続いては、時間計算で起きやすい表示エラーと確認方法を解説していきます。
| 表示や症状 | 主な原因 | 確認する箇所 |
|---|---|---|
| ####### | 負の時間 | 開始と終了の順番 |
| 8:00と表示 | 24時間超の表示形式 | [h]:mm設定 |
| 計算されない | 文字列の時刻 | セル配置と入力形式 |
計算式が合っているように見えても、入力値や表示形式が原因で意図しない結果になることがあります。
エラーの種類ごとに原因を切り分ければ、多くはすぐに修正できます。
シャープ記号が表示される場合
時間の計算結果として#######が表示される場合、セル幅が足りないことのほかに、負の時間が発生している可能性があります。
たとえば開始時刻が18:00で終了時刻が9:00なのに、日付またぎの計算式を設定していないと負の値になります。
列の境界線を右へドラッグして幅を広げても直らない場合は、数式の参照先と時刻の順番を確認してください。
夜勤のように終了時刻が開始時刻より早いデータは、日付またぎ用の数式に切り替える必要があります。
【操作のポイント】#######が出たら、最初に列幅を広げ、次に負の時間が発生していないかを確認します。
合計時間が24時間で戻る場合
40時間を合計したはずなのに16:00と表示される場合、計算結果そのものではなく表示形式が原因です。
通常のh:mm形式は時刻の部分だけを表示するため、24時間を超えた日数部分が見えません。
合計セルを選択し、セルの書式設定からユーザー定義を開いて[h]:mmを設定します。
これで40:00のように、累計した時間数をそのまま表示できます。
月間残業時間、プロジェクトの総工数、複数日の稼働時間にはこの設定が必要です。
【操作のポイント】24時間超の集計結果だけに[h]:mmを設定し、入力時刻のセルには通常のh:mmを使います。
時刻が文字列として認識される場合
セルに9:00と表示されているのに、SUM関数で合計されないことがあります。
この場合、先頭にアポストロフィが入っていたり、全角記号を使っていたりして、時刻が文字列として保存されている可能性があります。
セル内で左寄せになっている値は文字列のことが多いため、数式バーの内容も確認しましょう。
文字列の時刻を変換するには、入力し直す方法が確実です。
大量のデータでは、VALUE関数や時刻関数を使った変換も検討できます。
見た目が同じ9:00でも、文字列と時刻値では計算結果が大きく変わります。
【操作のポイント】計算されない時刻は、半角の数字と半角コロンで再入力し、セルが時刻として認識されるかを確認します。
まとめ エクセルで時間を計算する方法
Excelで時間を計算するには、時間が1日を基準とした数値であることを理解するのが出発点です。
開始時刻から終了時刻を引く場合は=B2-A2、休憩時間を除く場合は=B2-A2-C2の数式を使えます。
複数の時間を足し算する場合は、=SUM(B2:B10)のようにSUM関数で集計すると管理しやすくなります。
24時間を超える合計時間は[h]:mm、通常の時刻はh:mmという表示形式の使い分けが重要です。
夜勤など日付をまたぐ勤務時間では、=IF(B2<A2,B2+1,B2)-A2や=MOD(B2-A2,1)を使うことで正しい経過時間を求められます。
また、時間を給与計算や工数計算へ使う場合は、時刻に24を掛けて小数時間へ変換します。
表示が崩れたときは、数式だけでなくセルの書式設定、入力形式、開始時刻と終了時刻の順番を確認しましょう。
時間の計算ルールを表全体で統一すれば、勤怠管理や作業時間の集計を正確かつ効率的に進められます。