Home / Microsoft / Excel / 【2026年最新版】Excelで時間を計算する方法|24時間を超える合計・勤務時間も【完全ガイド】

【2026年最新版】Excelで時間を計算する方法|24時間を超える合計・勤務時間も【完全ガイド】

※本ページにはプロモーション(広告)が含まれています

Excelで時間を計算する方法【まず結論】

Excelで「退勤時刻から出勤時刻を引いて勤務時間を出したい」「1週間の労働時間を合計したら表示がおかしくなった」と困っていませんか。時間の計算はふつうの足し算・引き算でできますが、24時間を超えると見た目が0に戻る、合計が合わないなど、独特のつまずきポイントがあります。

結論を先にお伝えします。①時間の引き算は =退勤−出勤 でOK、②合計が24時間を超えるときは表示形式を [h]:mm にする、③時給を出すときは =時間×24×単価 と「×24」を必ず掛ける。この3つを押さえれば、勤務時間の集計はほぼ解決します。

この記事では、Excelで時間を計算する方法を、シリアル値という仕組みの理解から、差分・合計・時給計算・休憩の差し引き・マイナス時間の扱いまで、コピペしてそのまま使える数式とあわせて徹底的に解説します。WordではなくExcelの操作です。

Excel Time Subtract Clock Out In Sum Serial Value One Day

この記事でわかること

  • 時間の引き算(退勤−出勤)で勤務時間を出す方法
  • 合計が24時間を超えると0に戻る問題を「[h]:mm」で解決する方法
  • Excelが時刻を「1日=1」として扱うシリアル値の仕組み
  • 時間に時給を掛けて給料を計算する正しい数式(×24がカギ)
  • TIME関数・HOUR関数・MINUTE関数の使い方
  • 休憩時間を差し引いた実働時間の出し方
  • マイナスの時間が「####」になるときの対処法
  • そのまま貼って使えるコピペ用の数式一覧

時間計算の早見表(やりたいこと別)

まずはやりたいことから逆引きできる早見表です。詳しい手順は各見出しで解説します。

やりたいこと 数式・設定 ポイント
勤務時間(退勤−出勤) =B2-A2 セルの表示形式は「時刻」
時間の合計 =SUM(C2:C8) 表示形式を [h]:mm
24時間を超える合計 [h]:mm 形式 角カッコがないと0に戻る
時給×勤務時間 =C2*24*1200 「×24」を忘れない
休憩を引いた実働 =B2-A2-D2 休憩も時刻形式で入力
時間を数値(h)に変換 =C2*24 1.5=1時間30分
時刻を組み立てる =TIME(9,30,0) 9時30分0秒
「時」だけ取り出す =HOUR(A2) 0〜23の整数
「分」だけ取り出す =MINUTE(A2) 0〜59の整数

この表のうち、つまずく人がいちばん多いのが「24時間を超える合計」と「時給に×24を掛ける」の2つです。どちらもExcelが時刻を「数」として扱う仕組みを知っていれば、すっきり納得できます。次の章でその仕組みから見ていきましょう。

なお、ここで紹介している操作はすべて表計算ソフトのExcelでのものです。文書作成ソフトのWordにも表を入れる機能はありますが、Wordの表ではこうした時間の自動計算はできません。時間の集計をしたいときは、必ずExcel(またはGoogleスプレッドシートなどの表計算ソフト)で行ってください。本記事の数式は、Microsoft 365・Excel 2021・2019などの一般的なバージョンで共通して使えます。

Excelが時刻を扱う仕組み(シリアル値)

時間計算でつまずく原因のほとんどは、「Excelが時刻を数で持っている」ことを知らないために起こります。ここを理解すると、後の計算がすべてすっきり腑に落ちます。

1日=1、1時間=1÷24

Excelでは、日付と時刻を「シリアル値」という連続した数で管理しています。日付は「1900年1月1日を1」とした通し番号で、時刻はその1日を1とした小数で表します。つまり 1日=1.0 です。

ここから次の関係が導けます。

  • 1時間=1÷24=約0.04167
  • 1分=1÷24÷60=約0.000694
  • 12時間(正午)=0.5
  • 18時=18÷24=0.75

たとえばセルに「12:00」と入れて、表示形式を「標準」に変えてみてください。中身が「0.5」になっているのが見えます。これは「正午は1日のちょうど半分」という意味で、Excelは時刻をこのような小数として記憶しているのです。

だから時間は足し算・引き算できる

時刻が「数」である以上、足し算も引き算もそのままできます。「18:00−9:00」は内部では「0.75−0.375=0.375」という計算で、その0.375を時刻として表示し直すと「9:00」になります。これが「退勤−出勤で勤務時間が出る」理由です。

逆に言えば、計算結果は必ず「小数」で出ているのに、見た目が時刻になっているだけ、という二重構造を意識すると、後の「×24」や「[h]:mm」の話が一気に分かりやすくなります。時間計算でわけが分からなくなったときは、いったん表示形式を「標準」に戻して中身の小数を見てみると、Excelが何を計算しているのかがはっきりします。これは原因を切り分けるときの強力な手段なので、ぜひ覚えておいてください。

日付と時刻が一体になっている点に注意

もうひとつ大切なのが、日付と時刻が同じシリアル値の中に同居しているという点です。たとえば「2026/6/14 18:00」というデータは、整数部分(日付)と小数部分(時刻)を合わせた1つの数として記憶されています。整数部分が「2026年6月14日」を、小数部分の0.75が「18時」を表しているわけです。

このため、日付つきの時刻データ同士を引き算すると、「何日と何時間」をまとめた値が返ってきます。たとえば「6/15 6:00」から「6/14 22:00」を引くと、日付をまたいでいても自動的に「8:00」と正しく計算されます。夜勤の集計で日付も一緒に入力していれば、後で説明する補正をしなくても正しい勤務時間が出る、というのはこの仕組みのおかげです。逆に、時刻だけ(日付なし)で入力していると翌日という情報が消えてしまい、マイナスになってしまうのです。

つまり、勤怠表を作るときに「出勤・退勤に日付も入れるか、時刻だけにするか」で、必要な数式が変わってきます。日付も入れるなら素直な引き算でよく、時刻だけにするなら後述の夜勤補正が要る、と切り分けて設計すると迷いません。

Excel Over 24 Hours Zero Reset Bracket h Format Display Correct

方法1:時間の引き算で勤務時間を出す

最も基本となる、退勤時刻から出勤時刻を引いて勤務時間を求める方法です。

手順

  1. A2に出勤時刻(例:9:00)、B2に退勤時刻(例:18:00)を入力します。9:00 のようにコロン区切りで入れれば、Excelが自動で時刻として認識します。
  2. C2に =B2-A2 と入力してEnterを押します。
  3. 結果が「9:00」と表示されれば成功です。これが勤務時間(9時間)です。

結果が小数で出てしまうとき

=B2-A2 の結果が「0.375」のような小数で表示される場合は、計算自体は正しく、表示形式だけがずれています。C2を選択して Ctrl+1 でセルの書式設定を開き、「表示形式」タブ →「時刻」→「13:30」のような形式を選べば、時刻として表示されます。

つまり、引き算そのものは常に正しく行われていて、見え方を整えるだけ、という点を覚えておいてください。これが時間計算の安心材料になります。

具体例で確認する

実際に手を動かすと一気に納得できます。次のように入力してみてください。

  1. A2に「9:15」、B2に「17:45」と入力します。
  2. C2に =B2-A2 と入力します。
  3. 結果は「8:30」、つまり8時間30分の勤務になります。

このとき、C2の表示形式を一度「標準」に変えると「0.354…」という小数が見えます。これは8.5時間を24で割った値(8.5÷24)です。再び時刻形式に戻せば「8:30」に戻ります。中身は常に小数、見た目だけが時刻、という感覚をここでしっかりつかんでおくと、後の時給計算や合計でつまずきません。

分単位の端数があるとき

「9:07」から「17:53」までのように、半端な分があっても引き算はそのまま使えます。=B2-A2 で「8:46」と分まで正確に出ます。Excelは内部で秒単位(さらに細かくはミリ秒単位)まで持っているので、分や秒の端数があっても丸めずに計算してくれます。ただし表示形式を h:mm にしていると秒が見えないだけで、内部には秒が残っている点には注意してください。秒まで確認したいときは表示形式を h:mm:ss にします。

方法2:24時間を超える合計が0に戻る問題を解決する

1日ぶんの勤務時間は出せても、「1週間ぶんを合計したら、本当は45時間なのに21:00と表示される」という相談がとても多いです。これはExcelの仕様で、正しい対処法があります。

なぜ0に戻るのか

標準の「時刻」表示形式は、1日(24時間)を超えると、24時間ぶんを切り捨てて残りだけを表示します。たとえば合計が45時間なら、24時間を引いた「21:00」だけが見えるのです。時計が24時間で1周してしまうイメージです。

大事なのは、セルの中身(合計値)は正しいということ。45時間ぶんのシリアル値はちゃんと入っていて、表示だけが「21:00」になっているだけです。だから直すべきは計算ではなく表示形式です。SUM関数で足した合計そのものは1ミリも間違っていないので、安心してください。「合計が減った」と慌てて数式を作り直す必要はまったくありません。

解決手順:表示形式を [h]:mm にする

  1. 合計が入っているセル(例:C9)を選択します。
  2. Ctrl+1 でセルの書式設定を開きます。
  3. 「表示形式」タブ →「ユーザー定義」を選びます。
  4. 「種類」の欄に [h]:mm と入力してOKを押します。
  5. 表示が「45:00」に変わり、24時間を超えた合計が正しく見えるようになります。

ポイントは、時を表すhを 角カッコ [ ] で囲むことです。[h] と書くと「24時間を超えても繰り上げずに、累計の時間数をそのまま表示せよ」という意味になります。これが時間集計のいちばん重要なテクニックです。

分・秒も累計したいとき

角カッコは分や秒にも使えます。それぞれ意味が変わるので使い分けてください。

書式コード 意味 45時間30分の表示例
h:mm 24時間で繰り上がる(標準) 21:30
[h]:mm 累計の時間で表示 45:30
[mm] 累計の分で表示 2730(分)
[h]:mm:ss 累計の時:分:秒 45:30:00

勤務時間の集計では [h]:mm がほぼ万能です。まずはこれを使い、必要に応じて分単位の [mm] なども覚えておくと安心です。

表全体に [h]:mm を一気に適用する

合計セルだけでなく、各日の勤務時間の列もまとめて同じ形式にしたいことがあります。その場合は、対象の列やセル範囲をまとめて選択してから Ctrl+1 で書式設定を開き、[h]:mm を一度入力すれば、選択した全セルに同じ形式が適用されます。1セルずつ設定する必要はありません。月単位の勤怠表なら、勤務時間の列ぜんぶと合計セルをまとめて選んで一括設定するのが効率的です。

なお、いったんユーザー定義で [h]:mm を作っておくと、そのブックでは「ユーザー定義」の一覧に残ります。次に別のセルへ同じ形式を当てたいときは、一覧から選ぶだけで済むので、毎回入力し直す手間がなくなります。よく作る勤怠表は、最初に1つ作っておくと以降が楽になります。

合計セルは必ずSUMで足す

時間の合計は =C2+C3+C4… と1つずつ足してもよいのですが、行が増えると手間ですし、足し忘れも起こります。=SUM(C2:C8) のようにSUM関数で範囲指定するのが確実です。SUMで合計したうえで、その合計セルに [h]:mm を当てる、という2ステップが時間集計の王道パターンだと覚えておいてください。範囲の途中に空のセルがあってもSUMは無視してくれるので、まだ入力していない日があっても問題なく合計できます。

方法3:時給を掛けて給料を計算する(×24がカギ)

勤務時間に時給を掛けて給料を出すとき、そのまま =勤務時間×時給 としても、ありえないほど小さい金額になってしまいます。ここでも「時刻=小数」の仕組みが効いてきます。

なぜそのまま掛けると合わないのか

9時間ぶんのセルの中身は「9」ではなく「0.375」(9÷24)です。これに時給1200円を掛けると 0.375×1200=450 となり、本当は10800円のはずが450円になってしまいます。

正しい数式:時間に24を掛けて「時間数」に直す

解決は簡単で、勤務時間にまず24を掛けて「人間が読む時間数(9.0など)」に戻してから、時給を掛けます。

  1. C2に勤務時間(=B2-A2 で出した値)が入っているとします。
  2. 給料を出すセルに =C2*24*1200 と入力します(1200は時給)。
  3. 結果が「10800」になれば正解です。

計算の流れは 0.375 × 24 × 1200 = 10800 です。「×24」で小数を時間数に直す、これだけ覚えれば時給計算は怖くありません。時給を別セル(例:E1)に置くなら =C2*24*$E$1 のように絶対参照にしておくと、下にコピーしてもズレません。

給料セルの表示形式に注意

給料の数式を入れたセルが、もし時刻形式のまま残っていると「10800」が時刻として変な表示になります。給料セルは Ctrl+1 →「数値」または「通貨」に変えてください。時間のセルと金額のセルで表示形式を分けるのがコツです。とくに、すぐ隣のセルに勤務時間を時刻形式で入れていると、その書式が金額セルにコピーで引き継がれてしまうことがあります。金額が「10800」ではなく見慣れない時刻表示になっていたら、まず表示形式を疑ってください。

合計時間にまとめて時給を掛ける

1日ごとに給料を出すのではなく、月の合計時間に時給を掛けて総支給額を出すこともできます。考え方は同じで、合計時間([h]:mm 形式のセル)に対して =合計*24*時給 とするだけです。たとえば月の合計が「160:00」(160時間)で時給1200円なら =合計*24*1200 で192000円になります。合計セルが [h]:mm 表示でも、内部は累計のシリアル値なので、×24で正しく時間数に直り、正確な金額が出ます。

残業の割増を計算する

一定時間を超えたぶんを割増(たとえば1.25倍)にしたいときは、通常ぶんと割増ぶんを分けて計算します。1日8時間を超えたぶんを1.25倍にするなら、まず実働時間から8時間を引いた残業時間を出し、=残業時間*24*時給*1.25 のように割増率を掛けます。残業時間が0以下にならないよう =MAX(C2-TIME(8,0,0),0) のように下限を0にしておくと、定時で帰った日にマイナスの残業代が出てしまう事故を防げます。割増率は会社の規定に合わせて読み替えてください。

方法4:TIME・HOUR・MINUTE関数で時刻を組み立てる・分解する

数値から時刻を作ったり、時刻から「時」「分」だけを取り出したりするときに使う関数です。

TIME関数:数値から時刻を作る

書式は =TIME(時, 分, 秒) です。たとえば =TIME(9,30,0) は「9:30:00」という時刻を返します。別々のセルに入った「9」「30」を1つの時刻にまとめたいときに便利です。

  • =TIME(A2,B2,0) … A2の時とB2の分から時刻を作る
  • =A2+TIME(1,0,0) … A2の時刻に1時間を足す
  • =A2-TIME(0,15,0) … A2の時刻から15分を引く

「○時間後」「○分前」を計算したいときは、このTIME関数で時間の幅を作って足し引きすると、直感的に書けます。

HOUR・MINUTE・SECOND関数:時刻を分解する

時刻から一部だけ取り出す関数です。

  • =HOUR(A2) … 「時」を0〜23の整数で返す
  • =MINUTE(A2) … 「分」を0〜59の整数で返す
  • =SECOND(A2) … 「秒」を0〜59の整数で返す

注意したいのは、HOUR関数は 24時間で繰り返す点です。たとえば勤務時間の合計が「30:00」でも、=HOUR(セル) は30ではなく6を返します(30−24=6)。累計の時間数を整数で取り出したいときは、HOURではなく =合計×24 を使い、必要なら =INT(合計*24) で整数部分を取り出してください。HOUR関数はあくまで「時計の文字盤の時」を返すものだ、と割り切ると混乱しません。

「8時間30分」を別々のセルに分けて表示する

勤務時間を「8」と「30」のように時と分に分けて表示したいときは、HOURとMINUTEを組み合わせます。ただし合計が24時間を超える場合はHOURが繰り返してしまうので、時の部分は =INT(C9*24) で出し、分の部分は =MINUTE(C9)=ROUND((C9*24-INT(C9*24))*60,0) で出すと正確です。文章で「○時間○分」と表示したいなら、表示形式のユーザー定義で [h]"時間"mm"分" と書くほうが手軽で、計算式を増やさずに済みます。

TIME関数の繰り上がりにも注意

TIME関数も、分や秒に60以上の値を入れると自動で繰り上がります。たとえば =TIME(0,90,0) は「1:30」(1時間30分)になります。これは便利な反面、意図せず大きな値を入れると思わぬ時刻になることがあります。逆に言えば、分が90分でも気にせず入れれば正しく時間に直してくれるので、「○分後」を計算するときはこの性質をうまく使えます。

方法5:休憩時間を差し引いた実働時間を出す

勤務時間から休憩を引いて、給料の対象になる実働時間を求める方法です。

休憩も時刻として入力する場合

  1. A2に出勤(9:00)、B2に退勤(18:00)、D2に休憩(1:00)を入力します。
  2. 実働のセルに =B2-A2-D2 と入力します。
  3. 結果は「8:00」(9時間−1時間休憩=実働8時間)になります。

休憩を「分」の数値で入力したい場合

休憩を「60」のように分の数値で入れているなら、その数値をTIME関数か ÷24÷60 で時刻の幅に直してから引きます。

  • =B2-A2-TIME(0,D2,0) … D2に休憩分(60など)が入っている場合
  • =B2-A2-D2/1440 … 1440は1日の分数(24×60)。D2を時刻の幅に変換

「分の数値」と「時刻」は単位が違うので、そのまま引くと大きくずれます。必ずどちらかの単位にそろえてから計算してください。迷ったら、休憩も最初から「1:00」のように時刻で入力しておくのがいちばん事故が少ない方法です。

休憩が複数回ある場合

昼休みのほかに小休憩が何回かある職場では、休憩の合計をいったん別セルで =SUM(休憩の範囲) で出してから、それを勤務時間から引くと分かりやすくなります。たとえば休憩が「0:45」「0:15」の2回なら、合計1:00を出してから =B2-A2-合計休憩 とします。1つの数式に詰め込みすぎると後で見直しにくくなるので、休憩は休憩でまとめて集計しておくと、表のメンテナンスがぐっと楽になります。

方法7:勤務時間を15分・30分単位で丸める

会社の勤怠ルールでは、勤務時間を「15分単位」「30分単位」で丸めることがよくあります。Excelには時間を区切りのよい単位に丸める関数がそろっています。

切り捨て・切り上げ・四捨五入の関数

丸めの方向によって使う関数が変わります。基準値には「0:15」「0:30」のように時刻の文字列を指定します。

  • 切り捨て=FLOOR(C2,"0:15") … 15分未満を切り捨て(8:50→8:45)
  • 切り上げ=CEILING(C2,"0:15") … 15分の倍数へ切り上げ(8:50→9:00)
  • 四捨五入=MROUND(C2,"0:15") … 最も近い15分へ丸め(8:50→8:45、8:53→9:00)

多くの会社では、出勤は切り上げ(遅く始めた扱い)、退勤は切り捨て(早く終えた扱い)にして、働いた時間を多めに見積もらないルールが一般的です。実態に合わせて出勤・退勤それぞれに方向を選んでください。30分単位なら基準を "0:30" に変えるだけです。

丸めるタイミングに注意

丸めは「勤務時間を出してから丸める」のと「出勤・退勤の時刻を丸めてから引く」のとで結果が変わることがあります。たとえば9:07出勤・17:53退勤の場合、先に時刻を15分単位で丸めると9:00と18:00になり、引くと9:00ちょうどになります。一方、先に引いてから丸めると8:46→8:45となります。会社の規定がどちらを指しているかを確認し、計算の順番をそろえておくのが、後で揉めないコツです。どちらにせよ、丸めた結果のセルにも [h]:mm 形式を当てれば、合計が24時間を超えても正しく集計できます。

方法6:マイナスの時間や「####」エラーの対処

夜勤で「22:00出勤・翌6:00退勤」のように日付をまたぐ場合や、引き算の結果がマイナスになる場合の対処です。

日付をまたぐ勤務(夜勤)

退勤が出勤より小さい時刻(翌日)の場合、=B2-A2 だけだとマイナスになり「####」と表示されます。これは「翌日」という情報が時刻だけでは伝わらないためです。次のどちらかで解決します。

  • 翌日ぶんの1を足す=B2-A2+(B2<A2) … 退勤が出勤より小さいとき自動で1日(24時間)を足します
  • MOD関数を使う=MOD(B2-A2,1) … マイナスを24時間の範囲に丸めて正しい勤務時間にします

どちらも「日付をまたいだら24時間ぶん補正する」という同じ考え方です。夜勤を扱う表では、最初からこの数式にしておくと安全です。

「####」が出るとき

セルに「####」が並ぶのは、主に2つの原因があります。

  1. 列の幅が狭い:時刻が表示しきれないだけなので、列の境界をダブルクリックして幅を広げれば直ります。
  2. 結果がマイナスの時刻:標準の表示形式ではマイナスの時刻を表示できません。上の夜勤の数式で正の値に直すか、どうしてもマイナスのまま見せたいときは後述の設定が必要です。

どうしてもマイナス時間を表示したいとき

「予定より何分超過したか」をマイナスで見せたい場合などは、次のいずれかで対応します。

  • =TEXT(ABS(差),"h:mm") で絶対値を文字列にし、別途プラスマイナスの判定を付ける
  • ファイルのオプションで「1904年から計算する」に切り替える(ブック全体の日付がずれるため、扱いには注意)

通常の勤怠管理では、マイナスを直接表示するより、上の夜勤補正で正の値にそろえるほうがトラブルが少なくおすすめです。

Excel Hourly Wage Multiply 24 Break Subtract Formula Example

うまくいかない時の対処法

時間計算でよくあるトラブルと、その原因・対処をまとめます。

症状 原因 対処
合計が24時間で0に戻る 標準の時刻形式 表示形式を [h]:mm
給料が異常に小さい ×24を忘れている =時間*24*時給 にする
引き算結果が小数 表示形式が「標準」 Ctrl+1 で「時刻」に
####が表示される 列幅不足/マイナス時刻 列幅を広げる/夜勤補正
合計が合わない 時刻が文字列になっている 左寄せの値はTIMEVALUEで変換
9:00が0.375のまま 計算結果の表示形式 時刻形式へ変更

「時刻が文字列になっている」の見分け方

時刻を入力したのに合計が0になる、計算できないというときは、その値が 文字列(ただの文字)になっている可能性が高いです。見分け方は簡単で、何もしていないのにセルの左側に寄っているなら文字列、右側に寄っているなら数値(正しい時刻)です。

文字列になっている場合は =TIMEVALUE(A2) で時刻のシリアル値に変換できます。CSVから貼り付けた勤怠データなどでよく起こるので、合計がおかしいときはまずこの「左寄せ・右寄せ」を確認してください。なお、TIMEVALUEは「9:00」のように時刻として読める文字列にしか使えません。「9時」「9.00」のような独自の書き方になっていると変換できないので、その場合はデータの入力ルール自体を見直す必要があります。

「9」と入力したのに時刻にならない

セルに「9」とだけ入力すると、Excelはこれを「9時」ではなく「数値の9」として扱います。時刻として認識させたいなら、必ず 9:00 のようにコロンを付けて入力してください。コロンがあるかないかで、Excelは時刻か数値かを判断しています。これは入力の段階でのいちばん多いミスなので、勤怠表に時刻を打ち込むときは「コロンを忘れない」と意識しておくと安心です。

勤怠表をまるごと作るときの組み立て方

ここまでの内容を組み合わせると、実用的な勤怠表が作れます。おすすめの列構成は次のとおりです。

  1. A列に出勤時刻、B列に退勤時刻、C列に休憩を、すべて 9:00 のように時刻で入力する。
  2. D列(実働)に =B2-A2-C2 を入れ、表示形式は「時刻」にする。
  3. 最終行にD列の合計 =SUM(D2:D8) を置き、その合計セルだけ [h]:mm 形式にする。
  4. 給料を出すなら、合計セルの隣に =合計*24*時給 を入れ、そのセルは「通貨」形式にする。

このように「各日の実働は時刻形式」「合計だけ角カッコ形式」「金額は通貨形式」と役割ごとに表示形式を分けるのが、崩れない勤怠表の基本です。最初に1行ぶんを正しく作り、数式を下方向にコピーすれば、あとは時刻を打ち込むだけで自動的に集計される表が完成します。時給を別セルに固定するときは $E$1 のように絶対参照にしておくのを忘れないでください。

コピペ用:時間計算の数式一覧

下のボックスの数式は、そのままExcelのセルや数式バーに貼り付けて使えます。セル番地(A2やB2など)は、ご自分の表に合わせて書き換えてください。マウスで選択してコピー(Ctrl+C)し、Excelへ貼り付けてお使いください。

=B2-A2
=SUM(C2:C8)
=B2-A2-D2
=B2-A2-TIME(0,D2,0)
=B2-A2-D2/1440
=C2*24
=C2*24*1200
=C2*24*$E$1
=TIME(9,30,0)
=A2+TIME(1,0,0)
=A2-TIME(0,15,0)
=HOUR(A2)
=MINUTE(A2)
=SECOND(A2)
=INT(C9*24)
=B2-A2+(B2<A2)
=MOD(B2-A2,1)
=TIMEVALUE(A2)
=TEXT(ABS(B2-A2),”h:mm”)
=FLOOR(C2,”0:15″)
=CEILING(C2,”0:15″)
=MROUND(C2,”0:15″)
=MAX(C2-TIME(8,0,0),0)

それぞれの数式が何をするものか、対応表でまとめます。

数式 何をするか
=B2-A2 退勤−出勤で勤務時間を出す
=SUM(C2:C8) 時間の合計(表示は[h]:mm)
=B2-A2-D2 休憩(時刻入力)を引いた実働
=B2-A2-TIME(0,D2,0) 休憩を分の数値で引く
=B2-A2-D2/1440 休憩分を1440で割って引く
=C2*24 時刻を時間数(9.0など)に変換
=C2*24*1200 勤務時間×時給1200円で給料
=C2*24*$E$1 時給をE1から参照して給料
=TIME(9,30,0) 9時30分という時刻を作る
=A2+TIME(1,0,0) 時刻に1時間足す
=A2-TIME(0,15,0) 時刻から15分引く
=HOUR(A2) 「時」を整数で取り出す
=MINUTE(A2) 「分」を整数で取り出す
=SECOND(A2) 「秒」を整数で取り出す
=INT(C9*24) 累計時間の整数部分を取り出す
=B2-A2+(B2<A2) 夜勤(日付またぎ)を補正
=MOD(B2-A2,1) マイナスを24時間内に丸める
=TIMEVALUE(A2) 文字列の時刻を数値に変換
=TEXT(ABS(B2-A2),"h:mm") 時間差を文字列にして表示
=FLOOR(C2,"0:15") 15分単位で切り捨て
=CEILING(C2,"0:15") 15分単位で切り上げ
=MROUND(C2,"0:15") 15分単位で四捨五入
=MAX(C2-TIME(8,0,0),0) 8時間超の残業時間(下限0)

コピペ用:よく使う表示形式(ユーザー定義の「種類」欄に貼り付け)です。角カッコ・コロンはすべて半角の実在文字です。

[h]:mm
[h]:mm:ss
[mm] h:mm
h”時間”mm”分”
[h]”時間”mm”分”

よくある質問(FAQ)

Q1. 勤務時間の合計が本当は45時間なのに21:00と表示されます。

標準の時刻形式が24時間で繰り上がってしまうためです。合計セルを選び、Ctrl+1 →「ユーザー定義」→ 種類に [h]:mm と入力すれば「45:00」と正しく表示されます。中身の値は最初から正しいので、表示形式を変えるだけで解決します。

Q2. 時給を掛けたら金額がとても小さくなります。

勤務時間のセルは「9」ではなく「0.375」という小数で持っているためです。=勤務時間*24*時給 のように、まず24を掛けて時間数に直してから時給を掛けてください。9時間×時給1200円なら =C2*24*1200 で10800円になります。

Q3. 引き算の結果が「0.375」のような小数で出ます。

計算は正しく、表示形式だけがずれています。結果のセルを選んで Ctrl+1 →「時刻」を選べば「9:00」と表示されます。逆に時間数(9.0)で見たいときは、そのまま ×24 すると数値で取り出せます。

Q4. 22時出勤・翌6時退勤の夜勤がマイナスになります。

退勤が出勤より小さい時刻になるためです。=B2-A2+(B2<A2) または =MOD(B2-A2,1) を使うと、日付をまたいだぶんの24時間が自動で補正され、正しく「8:00」と出ます。

Q5. セルに「####」と表示されて読めません。

列の幅が足りないか、結果がマイナスの時刻になっています。まず列の境界線をダブルクリックして幅を広げてみてください。それでも直らないなら、夜勤補正の数式で値を正にするか、結果の符号を見直してください。

Q6. TIME関数とただの数値の引き算、どちらで休憩を引くべきですか。

休憩を「1:00」のように時刻で入力しているなら、そのまま =B2-A2-D2 で引けます。「60」のように分の数値で入れているなら =B2-A2-TIME(0,D2,0)=B2-A2-D2/1440 のように単位をそろえてから引いてください。単位違いの引き算は大きくずれます。

Q7. 合計しても0のままで足し算されません。

時刻が文字列(ただの文字)になっている可能性が高いです。何もしていないのに値がセルの左に寄っていたら文字列です。=TIMEVALUE(A2) で時刻の数値に変換するか、入力し直してください。CSVから貼り付けたデータでよく起こります。

Q8. 15分単位や30分単位で勤務時間を丸めたいです。

FLOOR関数やCEILING関数、MROUND関数が使えます。15分単位で切り捨てるなら =FLOOR(C2,"0:15")、15分単位で切り上げるなら =CEILING(C2,"0:15") です。会社のルール(切り捨て・切り上げ・四捨五入)に合わせて関数を選んでください。

まとめ

Excelの時間計算は、「時刻は1日=1の小数で持っている」という仕組みさえ押さえれば、ほとんどのつまずきが解消します。最後に重要ポイントを振り返ります。

  • 勤務時間は =退勤-出勤 でそのまま計算できる。結果が小数なら表示形式を「時刻」に直すだけ。
  • 合計が24時間を超えて0に戻るときは、表示形式を [h]:mm に。角カッコが累計表示のカギ。
  • 時給を掛けるときは =時間*24*時給。小数を時間数に直す「×24」を必ず入れる。
  • 休憩は単位をそろえて引く。時刻なら -D2、分の数値なら -TIME(0,D2,0)
  • 夜勤のマイナスは =MOD(B2-A2,1)+(B2<A2) で補正する。
  • 合計が合わないときは、値が左寄せ=文字列でないかを確認し、TIMEVALUEで変換する。

これらの数式は記事内のコピペ用ボックスからそのまま貼り付けて使えます。勤怠表や作業時間の集計を作るときは、まず1セルで動きを確かめてから表全体に広げると、崩れにくく確実です。Excelの表示形式と「×24」を味方につけて、時間の計算を正確にこなしていきましょう。

Check Also

Excelで桁区切りカンマを表示する方法 千円単位も 完全ガイド

【2026年最新版】Excelで桁区切りカンマ(3桁区切り)を表示する方法|千円単位も【完全ガイド】

Excelで桁区切りカンマを表 …