Excel(エクセル)で2つの日付の差を計算する場合は、DATEDIF関数を利用するのが一般的です。
そこでここでは、Excel(エクセル)でDATEDIF関数を利用して、2つの日付の差を計算する方法を紹介します。
目次
DATEDIF関数とは
DATEDIF関数は、引数として指定された2つの日付の差を計算する関数で、返される値は日数、月数、または年数を指定できます。
DATEDIF関数の書式は、次のとおりです。
=DATEDIF(開始日,終了日,単位)
DATEDIF関数で返される値は、引数「単位」で指定し、指定可能な値は次のとおりです。
単位 | 説明 |
---|---|
"Y" | 差を年数で返します。 |
"M" | 差を月数で返します。 |
"D" | 差を日数で返します。 |
"MD" | 年数と月数を無視して、日数の差のみを返します。(非推奨) |
"YM" | 年数と日数を無視して、月数の差のみを返します。 |
"YD" | 年数を無視して、日数の差を返します。 |
なお、引数「開始日」が引数「終了日」よりも大きい場合は、エラーとなります。
2つの日付の差を計算する
たとえば、A2セルに開始日、B2セルに終了日を入力し、C2セルで日付の差を計算し年数で表示したいときは、C2セルに次のように入力します。
=DATEDIF(A2,B2,"Y")
引数「単位」の部分を「"M"」と指定すれば日付の差を月数で表示し、「"D"」を指定すれば日付の差を日数で表示できます。
=DATEDIF(A3,B3,"M")
=DATEDIF(A4,B4,"D")
年齢や勤続年数を計算する
DATEDIF関数の便利な利用方法の一つとしては、年齢や勤続年数の計算があります。
たとえばA2セルに生年月日を入力して、B2セルに本日時点の満年齢を表示したいときは、B2セルに次のように入力します。(TODAY関数は本日の日付を返します。)
=DATEDIF(A2,TODAY(),"Y")
同じようにA2セルに入社年月日を入力するようにすれば、B2セルに勤続年数が表示されます。
あとがき
DATEDIF関数は「Lotus 1-2-3」という古い表計算ソフトとの互換性を保つために搭載されている関数のため、「関数の挿入」ダイアログボックスや入力支援から関数を入力することはできず、関数や引数の入力は、すべて手入力となります。