時給1,200円×8時間が「400円」になる理由
Excelで給与計算をして、こんな経験はありませんか?
時給1,200円のアルバイトが8時間働いた。普通なら 1,200 × 8 = 9,600円 のはずです。ところが、勤務時間を 8:00 というセルに入れて時給と掛けると、出てくるのは 「400円」 という謎の数字。
=1200*A1 (A1に 8:00 と入力) → 400
原因を一言でいえば、Excelが「8:00」を“8という数値”ではなく“時刻”として扱っているからです。入力ミスでも関数の間違いでもありません。この記事では、その仕組みと正しい数式を、コピペで使える形で解説します。
▲ Excel サンプル
なぜ400円になるのか? シリアル値の仕組み
Excelでは、日付や時刻はすべて「シリアル値」という数値で管理されています。
- 1日(24時間)= 1
- 1時間 = 1/24 ≒ 0.04167
- 1分 = 1/1440
つまりセルに 8:00 と入力すると、Excelの中身は 8 ÷ 24 = 0.3333… という小数です。見た目は「8時間」でも、計算に使われる実体は約0.333なのです。
1200 × 0.3333… = 400
8時間ではなく「0.333」を掛けていたわけです。これがちょうど 正解の1/24(9,600 ÷ 24 = 400) になっていると気づくと、原因がストンと理解できます。
解決策:基本形は「時給 × 時間 × 24」
ここが今回いちばん大事なポイントです。
シリアル値では「1時間 = 1/24」なので、逆に 24を掛ければ「○時間」という普通の数値に戻ります。
=A1*24 (A1が 8:00 のとき → 8 が返る)
これを使った給与計算の 基本形 は次の並びで覚えてください。
=時給 × 時間 × 24 =1200 * A1 * 24 → 9600
この記事では以降すべて、この 「時給 × 時間 × 24」 の並びで統一します。順番を固定すると、数式が長くなっても迷いません。
「1440を掛ける」との違い
分単位で計算したい場合は「1440(=24×60)」を掛けます。
| 掛ける数 | 変換後の単位 | 使う場面 |
|---|---|---|
| 24 | 時間 | 時給計算 |
| 1440 | 分 | 分単位の精算・残業計算 |
時給計算なら 24、分給や細かい精算なら 1440 と覚えておけば迷いません。
実践テンプレート:出勤・退勤から給与を出す
実務では「8:00」と直接入力するより、出勤時刻と退勤時刻から勤務時間を計算するのが一般的です。
| A(出勤) | B(退勤) | C(休憩) | D(実働) | E(給与) | |
|---|---|---|---|---|---|
| 2 | 9:00 | 18:00 | 1:00 |
D2(実働時間):退勤 − 出勤 − 休憩
=B2-A2-C2 → 8:00(時刻表示のまま)
E2(給与):基本形どおり、時給 × 実働 × 24
=1200*D2*24 → 9600
D列は「8:00」と時刻表示のままで構いません。給与を出すE列で *24 して数値に変えるのがコツです。
休憩の引き忘れに注意
=B2-A2 だけだと休憩込みの拘束時間になります。給与計算では必ず休憩を引きましょう。休憩が2回ある場合は休憩列を増やし、まとめてカッコでくくります。
=B2-A2-(C2+F2) (C2=1回目の休憩、F2=2回目の休憩)
休憩を引く列を明示するのがポイントです。1つのセルに無理に詰め込まず、列を分けると検算もしやすくなります。
「30分単位で切り捨て」など端数処理を入れる
勤怠ルールで「15分・30分単位で計算」と決まっている職場は多いはずです。シリアル値のまま端数処理ができます。
30分単位で切り捨て(FLOOR関数):
=FLOOR(B2-A2-C2,"0:30")*1200*24
15分単位で切り上げ(CEILING関数):
=CEILING(B2-A2-C2,"0:15")*1200*24
"0:30" のように基準時間を文字列で指定できるのがポイントです。
なお、切り捨て(FLOOR)は労働者に不利、切り上げ(CEILING)は有利に働きます。どちらを使うかは自社の勤怠ルールに合わせ、就業規則と矛盾しないように設定しましょう。
深夜勤務で日付をまたぐ場合
22:00 出勤、翌 6:00 退勤のように日付をまたぐと、=B2-A2 がマイナスになり「####」エラーになります。
このときは退勤が出勤より早いかどうかを判定して、1日分(=1)を足して補正します。
=B2-A2+(B2<A2)
(B2<A2) は、退勤が出勤より早い(=日付をまたいだ)ときだけ「1」を返すので、自動で1日加算されます。
全部入りの完成形テンプレート
最後に、休憩・端数処理・日またぎをすべて盛り込んだ1つの数式を載せておきます。これをコピペすれば、たいていの勤怠表に対応できます。
=FLOOR((B2-A2+(B2<A2))-C2,"0:30")*1200*24
読み解くとこうなります。
B2-A2+(B2<A2)… 日またぎを補正した拘束時間-C2… 休憩を差し引くFLOOR(…,"0:30")… 30分単位で切り捨て*1200*24… 時給を掛け、24で数値化(=基本形)
時給や端数単位は、自分の職場のルールに置き換えて使ってください。
計算が合わないときのチェックリスト
つまずきやすいポイントをまとめます。
- 給与が1/24になる →
*24を掛け忘れている - 「####」と表示される → 列幅が狭いか、結果がマイナス時刻になっている
- 給与セルが「時刻」表示になる → 表示形式を「標準」または「通貨」に変更する
- 合計時間が24時間を超えると変 → 合計セルの表示形式を
[h]:mmにする
特に「給与セルが勝手に時刻表示になる」現象は頻発します。計算は合っているのに「9600」が変な時刻で出るときは、Ctrl + 1 で表示形式を「標準」に直してください。
まとめ
Excelの給与計算でつまずく原因の大半は、「時間がシリアル値(1日=1)で管理されている」ことにあります。
- 時刻は内部的に小数で扱われている
- 時給計算の基本形は
時給 × 時間 × 24 - 端数処理は FLOOR / CEILING を
"0:30"指定で(切り捨ては不利・切り上げは有利) - 日付またぎは
+(退勤<出勤)で補正
この「×24」さえ押さえれば、勤怠表からの給与計算は一気にラクになります。ぜひ自分の勤務表に組み込んでみてください。
関連記事
- 【コピペOK】Excel勤怠表の作り方|出退勤を入れるだけで残業時間が自動計算
- Excelの時間計算で####になる原因と3つの対処法【勤怠表で使える】
- Excelで秒数を時:分:秒に変換|コピペで使えるTEXT関数と表示形式の使い分け
- Excelで時間を分に変換する方法|×1440・HOUR・MINUTEの使い分け
- 専用ソフト不要 ― Excelだけで「済」「確認」の朱色スタンプを作ってワンクリックで押す方法