勤続年数を計算~途中入社の場合は、DATEIF関数、DATE関数、YEAR関数、MANTH関数

勤続年数を計算~途中入社の場合

2013Excel関数技BEST 62回

勤続年数を計算~途中入社の場合

勤続年数を計算するときに、月の途中で入社したり、退社した場合をどうするかという問題があります。
会社ごとにルールがあると思いますが、ここでは、入社月や退社月を、途中であっても丸々1ヶ月とみなした場合の計算を考えます。
DATEIF関数の他に、DATE関数、YEAR関数、MANTH関数を使用します。

(サンプルファイルは、こちらから 2013関数技62回サンプルデータ

途中入社の場合の勤続期間を計算-正確に計算

以下の表は、DATEDIF関数を使って、入社日付と退社日付から勤続期間を正確に出しています。
D3セルに入力した式は、2013関数技61回の式と同じです。
=DATEDIF(B3,C3,"Y")&"年"&DATEDIF(B3,C3,"YM")&"ヶ月"&DATEDIF(B3,C3,"MD")&"日"
勤続期間

月の途中で入社、翌月の1日の入社に修正

入社日が月の途中の場合は、翌月の1日の入社に修正します。
それには、DATE関数を使って、入社日の年と月を使い、日付を1にします。
=DATE(YEAR(B3),MONTH(B3),1)
入社日の修正

月の途中で退社、翌月の1日の退社に修正

退社日が月の途中の場合も、同様に翌月の1日の退社日に修正します。
退社の月を翌月にするために、引数の月に+1して”MONTH(B3)+1”とします。
=DATE(YEAR(C3),MONTH(C3)+1,1)
退社日の修正1
勤続期間は、年月まで修正した入社日と退社日を使って計算します。
式は、
=DATEDIF(E3,F3,"y") & "年" & DATEDIF(E3,F3,"ym") & "ヶ月"
途中入社の勤続期間1
日付の修正に使った列が不要であれば、非表示にします。
途中入社の勤続期間2