DATEDIF関数の詳細解説(Excel)

ExcelのDATEDIF関数の使い方について解説

ExcelのDATEDIF関数は、二つの日付の間の日数、月数、年数を計算するための関数です。特定の期間内の経過日数や、ある日付から別の日付までの期間を求める際に役立ちます。

ただし「関数の挿入」からは作成できない関数となっているので、利用時には数式を直接入力する必要があります。

構文は以下の通りです。

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

引数は以下のとおりです。

  • 開始日: 期間の開始日を指定します。
  • 終了日: 期間の終了日を指定します。
  • 単位: 結果を返す単位を指定します。次のいずれかの文字列を使用できます。
    • “y” – 年数、年齢計算に使える。
    • “m” – 月数
    • “d” – 日数
    • “ym” – 月の差 (年数は無視)
    • “yd” – 日の差 (年数は無視)
    • “md” – 日の差 (年数および月数は無視)

DATEDIF関数のサンプル

サンプルデータとして、次のような表を用意しました。左上のセルをA1とします。

開始日2023/04/02
終了日2024/07/10

開始日 (B1) と終了日 (B2) の間の日数を求める場合、次の式を使用します。

=DATEDIF(B1, B2, "d")

この式を使用すると、開始日と終了日の間には465日があることが分かります。

開始日と終了日の間の月数を求める場合、次の式を使用します。

=DATEDIF(B1, B2, "m")

この式を使用すると、開始日と終了日の間には15ヶ月があることが分かります。

開始日と終了日の間の年数を求める場合、次の式を使用します。「年齢計算」の基本数式です。

=DATEDIF(B1, B2, "y")

この式を使用すると、開始日と終了日の間には1年があることが分かります。年齢計算なら「1歳」の意味になります。

開始日と終了日の間の月の差 (年数を無視) を求める場合、次の式を使用します。

=DATEDIF(B1, B2,"ym")

この式を使用すると、開始日と終了日の間には3ヶ月があることが分かります。

開始日と終了日の間の日の差 (年数を無視) を求める場合、次の式を使用します。

=DATEDIF(B1, B2, "yd")

この式を使用すると、開始日と終了日の間には99日があることが分かります。

開始日と終了日の間の日の差 (年数および月数を無視) を求める場合、次の式を使用します。

=DATEDIF(B1, B2, "md")

この式を使用すると、開始日と終了日の間には8日があることが分かります。

注意点として

終了日が開始日よりも前の日付を指定した場合、DATEDIF関数はエラー (#NUM!) を返します。したがって、開始日と終了日の順序に注意してください。

まとめ

この記事では、ExcelのDATEDIF関数の使い方について解説しました。開始日と終了日の間の日数、月数、年数を求める際に便利な関数であることが分かりました。特定の期間内の経過日数や、ある日付から別の日付までの期間を求める際に活用してください。