年休管理や日数換算で8時間を1日にするExcelテクニック

年休管理や日数換算で8時間を1日にするExcelテクニック

エクセルは表計算ソフトなので、勤務日数や有給取得などの管理表をエクセルで作ることもあるでしょう。エクセルで年休管理や日数換算が効率的にできるように、方法を確認してみましょう。経理や総務に従事している方は、必見のテクニックです!

有給取得日数、時間から残時間を計算するには?

例えば、下記のようなケースです。簡単な形ですが有給の計算表になっています。何日と何時間休んだから、残りは何日と何時間…という計算を手打ちでするのは大変ですよね。エクセルでひな形を作ってしまいましょう!

有給消化日数表

有給日数には、従業員が取得することができる有給の日数と、それを時間換算したものが記載されています。通常、1日を8時間として計算しますので、下記のようになっています。

B2の数式 = B1*8

これで、B1に有給日数が入ると時間換算が出てくるようにしています。
有給取得には、従業員が今まで消化した有給の日数と、時間給で消化した時の時間数を入力します。別表で管理しているものを参照してもってきてもよいでしょう。
さて、以上を入力して、有給の残時間が何日何時間なのか?ということが出てくるようにするには、どうすればいいのでしょうか?数式を作って単純に計算すると、下記のようになります。

1日8時間として有給日数を計算する

有給日数 20日
時間換算 20 * 8=160時間
有給取得 3日 + 15時間
残時間 (160時間 – (3日 * 8時間) – 15時間) / 8 = 15 あまり 1

答え 15日と1時間

まず、残時間の日数を出す式を数式として書き出すと
=(B2-(B4*8)-B5)/8
上記のようになりますが、結果を確認するとこのようになります。

残時間の日数を出す式を数式

割り切れず、小数点が出てしまいます。15.125日は15日と表記したいので、切り捨てる必要がありますね。もちろん、関数を使います。ここで、切り捨てる関数を使用してみましょう。INT(インテジャー)関数といいます。引数に入れた数値をの小数点を切り捨てる関数です。細かく確認すると、「引数に指定した数値を超えない最大値を返す」というものです。

似た関数でROUNDDOWN(ラウンドダウン)関数がありますが、こちらは単純に「小数点以下を切り捨てる関数」で、この2つの差は数値がマイナスになったときに現れます。例えば「-2.9」をINTで切り捨てると-3、COUNTDOWNで切り捨てると-2になります。-2.9を超えない整数は3になるので、MODはそちらを採用し、小数点以下を単純に切り捨てると-2なので、ROUNDDOWNはそちらを採用するのです。

ただ、今回のように有給日数を数える時はマイナスとして数えることがないと考えられるので、どちらを使用してもよいでしょう。INT関数で作ってみます。

=INT((B2-(B4*8)-B5)/8)

すると、結果は「15」となり、正しく表示することができました。

次に、残時間を表示してみましょう。先ほど、切り捨て前の残日数は「15.25」でした。15.25日ということです。残日数は15日と表示できたので、残りは15.25-15=0.25日となります。これを時間に変換しましょう。ただし、1日は8時間で計算します。
残時間を求める式は下記のようになります。

(160時間 – (3日 * 8時間) – 15時間) / 8 = 15 あまり 2

あまりを求める関数は、MOD(モデュラス)関数です。引数に(割られる数,除数)というふうに指定すると、あまりを返してくれます。

=MOD((B2-(B4*8)-B5),8)

残時間は「1」と正しく表示されました。

残時間は「1」と正しく表示されました。これで、有給は残り15日と1時間ということが求められました。有給取得日数と時間が変わるのに連動して残時間が変わるように工夫できています。

切り捨てとあまりを出す関数で日数計算は自動化できる!

いかがでしたでしょうか?「1日を8時間とする」というところで難しく考えてしまいそうになりますが、切り捨てる関数とあまりを出す関数を工夫して使うことによって、今回のような有給の管理表を作ることができます。一見難しく見えますが、一度このようなひな形が作成できれば後の業務がぐっと楽になるはずです。

有給時間の計算のほか、勤怠管理や様々な日数管理で、除算を使うような場合には今回のような関数の使い方が十分に応用できます。数式だけで考えると行き詰ってしまいますが、関数を利用することによって道が開けることはけっこうあるものです。エクセルには400種類以上もの関数があります。

「こんなことできないかな?」「あんなことできるかな?」と思った時は、ぜひ一度調べてみてください。いろんな関数の用途や、関数以外にも様々な機能で解決できる方法があるはずです。エクセルで業務を楽にするテクニックはまだまだあります!ぜひ活用してくださいね。