2 つの日付の間の日数、月数、または年数を計算します。
警告: Excel では、Lotus 1-2-3 の古いブックをサポートするために、DATEDIF 関数が用意されています。 DATEDIF 関数では、特定のシナリオで誤った計算結果を返すことがあります。 詳細については、この記事の既知の問題のセクションを参照してください。
書式
DATEDIF(開始日,終了日,単位)
引数 |
説明 |
||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
start_date 必須 |
特定の期間の最初の日付または開始日を表す日付。 日付は、二重引用符 ("2001/1/30" など)、シリアル値 (たとえば、2001 年 1 月 30 日を表す 36921、1900 年 1 月の日付システムを使用している場合は 36921)、または他の数式や関数の結果 (DATEVALUE("2001/1/30" など) として入力できます。 |
||||||||||||||
end_date 必須 |
期間の最後または最後の日付を表す日付。 |
||||||||||||||
単位 |
返される情報の種類を次に示します。
|
解説
-
日付は連続したシリアル値として保存され、日付の計算が行われています。 既定では、1900 年 1 月 1 日がシリアル値 1 として保存され、2008 年 1 月 1 日は 1900 年 1 月 1 日から 39,447 日後に当たるので、シリアル値は 39448 になります。
-
DATEDIF 関数は年齢を計算する数式で利用すると便利です。
-
s の値tart_dateeより大きいnd_date、結果は#NUM!
例
開始日 |
終了日 |
数式 |
説明 (計算結果) |
2001/01/01 |
2003/01/01 |
=DATEDIF(開始日,終了日,"Y") |
期間内の 2 年 (2) |
2001/06/01 |
2002/08/15 |
=DATEDIF(開始日,終了日,"D") |
2001/6/1 から 2002/8/15 までの 440 日 (440) |
2001/06/01 |
2002/08/15 |
=DATEDIF(開始日,終了日,"YD") |
日付の年数は無視されるため、6/1 から 8/15 までの 75 日 (75) |
既知の問題
"MD" 引数は、負の値、ゼロ、または不正確な結果を返すことがあります。 1 か月が過ぎた後で、残りの日数を計算するには、こちらの回避策をお試しください。

この数式は、セル E17 の元の終了日 (2016/5/6) から終了日 (2016/5/06) を減算します。 この方法を次に示します。最初に DATE 関数によって、2016/5/1 という日付が作成されます。 セル E17 の年とセル E17 の月を使用して作成します。 次に 、1 はその 月の最初の日を表します。 DATE 関数の結果は 2016/5/1 です。 次に、セル E17 の元の終了日 (2016/5/6) から減算します。 2016/5/6 - 2016/5/1 は 5 日間です。
補足説明
Excel 技術コミュニテでは、いつでも専門家に質問できます。また、Answers コミュニティでは、サポートを受けられます。