勤続年数を何年何カ月という形式で計算したい
Excelで入社年月日から勤続年数を「○年○カ月」という形式で計算する方法を紹介します。ここでは、現在の日付を基準に計算する方法と、特定の日付を基準に計算する方法について、数式の詳細も含めて解説します。年次有給休暇の付与日数計算などに用います。
TODAY関数を使って現在の日付「今日」までの勤続年数を計算する
まず、TODAY関数を使用して、現在の日付を基準に勤続年数を計算する方法です。TODAY関数は、Excelで現在の日付を取得する関数で、日付が変わると自動的に更新されます。
数式
セルA2に入社年月日が入力されている場合、セルB2に勤続年数を表示する数式は以下の通りです。
=DATEDIF(A2, TODAY(), “Y”) & “年 ” & DATEDIF(A2, TODAY(), “YM”) & “カ月”
例
A | B | |
---|---|---|
1 | 入社年月日 | 勤続年数 |
2 | 2015/04/01 | =DATEDIF(A2, TODAY(), “Y”) & “年 ” & DATEDIF(A2, TODAY(), “YM”) & “カ月” |
数式の詳細(現在の日付「今日」の場合)
- =DATEDIF(A2, TODAY(), “Y”):
この式は、セルA2の入社年月日から現在の日付(TODAY()関数が返す日付)までの「年数」を求めます。
- =DATEDIF(A2, TODAY(), “YM”):
この式は、セルA2の入社年月日から現在の日付までの「年数」を除いた「月数」を求めます。ここで「YM」は、年数を無視して月数だけを返す指定です。
- これらの結果を、「年」と「カ月」の文字列と連結し、「○年○カ月」という形式で表示します。
特定の年月日「基準日」を指定して勤続年数を計算する
次に、特定の日付を基準として勤続年数を計算する方法です。例えば、会社の決算日や評価基準日など特定の日付を基準にしたい場合に便利です。
数式
セルA2に入社年月日、セルB2に基準日を入力し、セルC2に勤続年数を表示する数式は以下の通りです。
=DATEDIF(A2, B2, “Y”) & “年 ” & DATEDIF(A2, B2, “YM”) & “カ月”
例
A | B | C | |
---|---|---|---|
1 | 入社年月日 | 基準日 | 勤続年数 |
2 | 2015/04/01 | 2023/04/01 | =DATEDIF(A2, B2, “Y”) & “年 ” & DATEDIF(A2, B2, “YM”) & “カ月” |
数式の詳細(特定の年月日「基準日」を指定する場合)
- =DATEDIF(A2, B2, “Y”):
この式は、セルA2の入社年月日からセルB2の基準日までの「年数」を求めます。
- =DATEDIF(A2, B2, “YM”):
この式は、セルA2の入社年月日から基準日までの「年数」を無視した「月数」を求めます。指定した基準日をもとに、年数を除いた月数が計算されます。
- これらの結果を「年」と「カ月」の文字列と連結し、「○年○カ月」という形式で表示します。
補足: 結果が0カ月となる場合に表示しない方法
勤続年数がちょうど「○年」になる場合に、「○年0カ月」と表示されることがあります。もし「0カ月」を非表示にしたい場合は、IF関数を使って条件を追加します。以下は現在の日付の場合です。
例:
=DATEDIF(A2, TODAY(), “Y”) & “年” & IF(DATEDIF(A2, TODAY(), “YM”)=0, “”, DATEDIF(A2, TODAY(), “YM”) & “カ月”)
この数式では、月数が0の場合には「カ月」の表示を省略し、○年のみ表示されます。
まとめ
Excelで入社年月日から勤続年数を「○年○カ月」と表示するには、DATEDIF関数を使用すると便利です。現在の日付を基準とする場合にはTODAY関数、特定の基準日を指定する場合には基準日をセルに入力して対応できます。状況に応じて数式を使い分け、正確な勤続年数を計算しましょう。
使用した関数について


