Excel(エクセル)で日付の差を計算する方法(DATEDIF)

Excel(エクセル)で日付の差を計算する方法(DATEDIF)

Excel(エクセル)で2つの日付の差を計算する場合は、DATEDIF関数を利用するのが一般的です。

そこでここでは、Excel(エクセル)でDATEDIF関数を利用して、2つの日付の差を計算する方法を紹介します。

Excel(エクセル)で時間の差を計算する方法
ここでは、Excel(エクセル)で2つの時間の差を計算して、時刻形式で表示したり、時・分・秒に変換して表示する方法を紹介します。

この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェアバージョン
Windows 10 Pro 64bit20H2
Microsoft Excel for Microsoft 36516.0.13127.20402
created by Rinker
マイクロソフト
¥13,545 (2024/04/25 08:41:40時点 Amazon調べ-詳細)

DATEDIF関数とは

DATEDIF関数は、引数として指定された2つの日付の差を計算する関数で、返される値は日数、月数、または年数を指定できます。

DATEDIF関数の書式は、次のとおりです。

=DATEDIF(開始日,終了日,単位)

DATEDIF関数で返される値は、引数「単位」で指定し、指定可能な値は次のとおりです。

単位説明
"Y"差を年数で返します。
"M"差を月数で返します。
"D"差を日数で返します。
"MD"年数と月数を無視して、日数の差のみを返します。(非推奨)
"YM"年数と日数を無視して、月数の差のみを返します。
"YD"年数を無視して、日数の差を返します。

なお、引数「開始日」が引数「終了日」よりも大きい場合は、エラーとなります。

2つの日付の差を計算する

たとえば、A2セルに開始日、B2セルに終了日を入力し、C2セルで日付の差を計算し年数で表示したいときは、C2セルに次のように入力します。

=DATEDIF(A2,B2,"Y")

Excel(エクセル)で日付の差を計算する方法(DATEDIF)

引数「単位」の部分を「"M"」と指定すれば日付の差を月数で表示し、「"D"」を指定すれば日付の差を日数で表示できます。

=DATEDIF(A3,B3,"M")

Excel(エクセル)で日付の差を計算する方法(DATEDIF)

=DATEDIF(A4,B4,"D")

Excel(エクセル)で日付の差を計算する方法(DATEDIF)

年齢や勤続年数を計算する

DATEDIF関数の便利な利用方法の一つとしては、年齢や勤続年数の計算があります。

たとえばA2セルに生年月日を入力して、B2セルに本日時点の満年齢を表示したいときは、B2セルに次のように入力します。(TODAY関数は本日の日付を返します。)

=DATEDIF(A2,TODAY(),"Y")

Excel(エクセル)で日付の差を計算する方法(DATEDIF)

同じようにA2セルに入社年月日を入力するようにすれば、B2セルに勤続年数が表示されます。

あとがき

DATEDIF関数は「Lotus 1-2-3」という古い表計算ソフトとの互換性を保つために搭載されている関数のため、「関数の挿入」ダイアログボックスや入力支援から関数を入力することはできず、関数や引数の入力は、すべて手入力となります。