この計算機でできること
このツールは、出勤時刻(クロックイン)と退勤時刻(クロックアウト)の間が何時間になるかを計算します。日付をまたいで深夜・早朝まで続くシフトも正しく処理できるのが特長です。両方の時刻を24時間表記で入力し、必要に応じて無給休憩の時間を加えると、勤務の総時間と実労働時間(支給対象時間)を表示します。
使い方
まず出勤の「時」と「分」を入力し、続けて退勤の「時」と「分」を入力します。退勤時刻が出勤時刻より早い場合、計算機はシフトが日付をまたいだものと判断し、自動的に1日分(24時間)を加算します。無給休憩がある場合は分単位で入力すると、実労働時間から差し引かれます。
計算式の仕組み
両方の時刻を「午前0時からの経過分数」に変換します。勤務時間(スパン)は \(\big[(\text{退勤時刻} - \text{出勤時刻} + 1440)\bmod 1440\big]\) で求めます。1440(1日の総分数)を加えてから余りを取ることで、日付をまたぐ深夜シフトでも必ずプラスの値になります。実労働分はこのスパンから休憩時間を引いたもので、60で割れば時間に換算できます。
$$\text{Paid Hours} = \frac{\big[(\text{Out}-\text{In}+1440)\bmod 1440\big] - B}{60}$$
$$\text{where}\quad \left\{ \begin{aligned} \text{In} &= 60\cdot\text{In Hour} + \text{In Min} \\ \text{Out} &= 60\cdot\text{Out Hour} + \text{Out Min} \\ B &= \text{Break (min)} \end{aligned} \right.$$
計算例
22:00(午後10時)から翌6:30(午前6時30分)まで、休憩30分のシフトの場合:出勤=1320、退勤=390。スパン=\((390 - 1320 + 1440)\bmod 1440 = 510\) 分=8.5時間。実労働分=\(510 - 30 = 480\) 分=8.0時間が支給対象の労働時間となります。
$$\text{Paid Hours} = \frac{\big[(390-1320+1440)\bmod 1440\big] - 30}{60} = \frac{510 - 30}{60} = 8.0$$
よくある質問
24時間を超えるシフトにも対応していますか? いいえ。退勤時刻が出勤から1日以内にあることを前提としており、これは一般的な勤務シフトをカバーします。
出勤時刻と退勤時刻が同じ場合は? スパンは0分として扱われます(24時間とはみなしません)。
休憩時間は給与に含まれますか? 休憩は無給として扱い、実労働時間から差し引かれます。総勤務時間の行では休憩は考慮されません。