doodle-on-web

自分で調べたことや、仕事の中で質問されたことなどをまとめています。

Excel給与計算で「400円」になる謎を解決|時給×勤務時間の正しい数式

スポンサーリンク

時給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 サンプル

なぜ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」さえ押さえれば、勤怠表からの給与計算は一気にラクになります。ぜひ自分の勤務表に組み込んでみてください。


関連記事

あわせてチェック