Excelで時間計算・時給計算
Excelで時間計算を行う場合、Excelでの日付・時刻・時間の考え方を理解していないと正しい数式の作成ができません。
時給計算がうまくできない理由
以下のように単純に稼働時間に時給を掛けても正しい回答が表示されません。
時給1,000円で12時間45分働いた給料が531円になる訳がありません。
正しい回答は12時間×1,000円=12,000円と45分(1時間の3/4→時給1,000円の3/4)の750円の合計で12,750円が正解になります。
最初に回答を行ってしまうと、上の例の正しい計算式は=D6*D7*24となります。
なぜ24を掛ける必要があるのかを時給での給料計算書を作成しながら説明します。
1時間を入力したセルを選択し[Ctrl]+[!]で「書式設定」を開く
入力した内容が[ユーザー定義]のh:mm(時間:分)になっていることが確認できます。
2[退勤]時間-[出勤]時間=「稼働時間」の計算式を入力
3オートフィルで数式をドラッグしてコピー
4SUM(合計)で[D2]~[D4]を指定し、月間の稼働時間数を求めます。
ここまでの数式・手順には問題になる点はありません。
稼働時間 掛ける 時給では正しく計算されない
4月間の稼働時間(労働時間)に時給を掛けると5の様に正しく計算されません。
これは12進数の時間・時刻・日付をExcelはシリアル値という考え方で捉えているので、10進数で扱われる数字とは「1」の定義された意味が異なるためです。
シリアル値を踏まえたExcelの時間計算
例えばExcelで「0.5」という数字を入力した場合、書式設定で
1標準では「0.5」
2[分数]では1/2
3[時刻]では12:00
と表示形式が違うと異なって見えますが、エクセルでは全て数字に置き換えると「0.5」として認識されています。
先ほどのセルD2の5:15(5時間15分)を「標準形式」で表示し直すと「0.21875」という数字でExcelが認識していることが分かります。
Excelは時間をシリアル値で認識しています。
エクセルのシリアル値は一日(24時間)を「1」として考えています。
なので0.5と入力し「表示形式」を「時刻」にすると
半分の12:00となった訳です。
先ほどの稼働時間の計算結果、5:15(5時間15分)が「0.21875」とExcelが認識している例で・・
パーセンテージの方が理解しやすいかも知れないので・・
1日(100%)のうち、21.875%を稼働(労働)した。
パーセンテージ(比率/割合)から時間を算出する為に
(1日)24時間のうち21.875% → 24時間×21.875% と。
時間・時刻同士の計算式の場合は意識しなくても正しい回答が算出できますが、時給計算を行う際はシリアル値から数値化する為に「×24」が必要になる訳です。
時給計算の場合、時間に24を掛ける
という事で、Excelが日付・時間・時刻をシリアル値として扱っているので時間計算の場合には×24が必要になります。
日付・時刻とExcelのシリアル値について
上記の内容がうっすら理解できればここは読み飛ばしても問題ないです。
そもそもシリアル値とは・・について説明します。
Excelで日付を扱う為にはいくつかの定義が必要です。
例えば西暦2017年は西暦0年から2017年経った年、平成29年は平成元年から29年・・というように起点になるものを定義しなければExcelが日にち計算式の中で扱うことができません。
そこで1900年1月1日を[1]とし、24時間を+1つまり[2]が1900年1月2日となるように定義しているのです。
例えば、以下のように1、2、1.25をセルの書式設定で[日付]を指定すると、以下のように1900年1月1日、1900年1月2日のように表示されるようになります。
特筆すべきなのは1.25と入力した場合。
1 → 1900年1月1日。0.25=1/4つまり1日24時間の1/4→6時間。
セルの書式設定で日付設定になっているのでセル上は1900年1月1日となりますが、数式バーでは【1900/1/1 6:00:00】まで表記されています。
初心者です
非常にわかりやすい解説でした。
いろいろと、ネットも見させてもらいました。ようやく理解できる内容が見つかりました。有り難うございました。