やると必ず一度は途方に暮れるといわれるExcel時給計算の闇についての記事です。これ意外とややこしいのでどう説明したものかと思いましたが、とりあえず表とか作ってみました。ご参考になれば幸いです。
なぜ時給が計算できないのか
一言で言えば、8時間はデータ上8ではない数字になるからです。
こういう感じで、労働時間と時給、日当を入れる簡単な表があるとします。
労働時間×時給=日当なので、=B2*D$2と入力してみましたが……。
日当が0時になりました。問題があり、時給が計算できていない状態です。
右クリック→セルの書式設定で、労働時間を入力したセルの書式を確認してみましょう。
するとユーザー定義タブの「h:mm」あたりが選択されていることと思います。書式はデータをどういう形式で表示するかを規定できますが、●:●●という形式で入力されたデータは、このように自動で書式上「時間」として設定されます。
問題は、書式が時間のデータは、計算に使うとシリアル値になることです。
シリアル値については別記事を参照していただくとして要するに、●:●●で入力したものはデータ上全然違う数字として扱われます。24時間が1、12時間で0.5。8時間なら0.3333…という値が計算に使われます。
しかも時刻を掛け算した場合、出力先のセルが標準なら、書式が時刻に変更されます。
しかも時刻を掛け算した場合、出力先のセルが標準なら、書式が時刻に変更されます。
日当は0:00として表示されていましたが、正確には表のような計算が行われ、
そのうち時間だけが表示されててこうなるわけです。
解決方法①そもそも時間設定で入力しない
●:●●形式で入れるからバグるのであって、普通に数字で入れれば何も問題はないです。
解決方法②24倍する
いや、分はやはり分で入れたいし……という向きであれば、とりあえず時給の書式を標準や通貨に変更し……。
(ちなみに書式の変更はいちいちセルの書式設定を開かないでも、ホームタブにある書式形式ボタンからも選べます)
日当を24倍して、=B2*D$2*24のようにしてしまうという手もあります。仮に24時間働くとシリアル値では1になるので、シリアル値を24倍すれば計算が合うという理屈です。
完成品。人に渡す場合、この状態で時間を再入力する分には書式は崩れないですが、日当周りなどは編集不可にしてから記入してもいいかもしれません。
Excel(エクセル)で残業代を計算する方法
時給の計算方法の記事は別に書いたんですが、残業代を別途計算する場合、少し表に手を入れる必要があります。
成果物
勤務開始・終了時間から勤務時間と残業時間を算出し、給与を計算します。
とりあえず深夜手当とかは作ってないですが、同...
Excel(エクセル):金額、通貨、時給、消費税
Excelの金額、通貨関連操作、設定方法のまとめです。
金額表示設定
数値を通過設定にする、表示に\マーク、$、€などの通貨記号を付けるには、セルの書式設定で通貨を選択するか、通貨表示形式ボタンをクリックします。
...
Excel(エクセル):日付、時間、曜日、シリアル値
Excelの時間関連操作、設定、関数などまとめです。
セルの表示設定、関数
基本
日付をセルに入力したい場合、m/dあるいはm-dの形式で入力すれば、
自動で入力した年のその日付になります。年号も指定したい場合は、y...
コメント