エクセルで日付を引き算する方法|DATEDIF関数が簡単
ここでは、エクセルで日付を引き算する方法を解説します。
何気に困ることなので、パターン別に紹介します。
1.日付の引き算ならDATEDIF関数がおすすめ
日付の引き算には、DATEDIF関数が簡単でいろいろなパターンで使えるので、おすすめです。
1-1.DATEDIF関数とは
DATEDIF関数とは、「2つの日付の間の日数、月数、または年数を計算し返す」関数です。
つまり、使い方によって「日数の引き算」や「月数の引き算」、「年数の引き算」のすべてがDATEDIF関数でできます。
数式の形は、次の通りです。
例えば、「開始日」を「1999/1/1」、「終了日」を「2021/11/24」、「単位」を「"Y"」とすると、「2021年11月24日」から「1999年1月1日」の年数を引き算することができます。
なお、各引数の指定の仕方はこの後詳しく説明します。
1-2.DATEDIF関数にヘルプはない
DATEDIF関数は、他の関数と違ってヘルプがありません。
例えば、DATEDIFと入力している途中で、他の関数であれば候補が出てくるのですが、DATEDIF関数は出てきません。
また、「関数の引数ダイアログボックス」もありません。
ただし、正しく入力すればちゃんと使えるので、こういうものだと思いましょう。
2.各引数の指定の仕方
「開始日」、「終了日」、「単位」の3つの引数の入れ方を見ていきます。
2-1.「開始日」の指定の仕方
開始日には、「いつから~」の日を入れます。
入れ方は2パターンあり、「日付を直接入力する」方法と、「日付の入ったセル番号を入力する」方法です。
(1)日付を直接入力する場合
日付を直接入力する場合には、日付を「"」で囲みます。
例えば、
=DATEDIF("2021/4/1",~)
のようになります。
(2)日付の入ったセル番号を入力する場合
セル番号を入力する場合には、そのまま入れます。
例えばセルA1に日付が入っている場合には、
=DATEDIF(A1,~)
となります。
2-2.「終了日」の指定の仕方
終了日には、「いつまで」の日を入れます。
指定の仕方は、開始日と同じです。
2-3.「単位」の指定の仕方
単位には、返す値の単位を指定します。
DATEDIF関数で一番分かりづらいのがこの「単位」ですが、この後パターン別に動きを見てみます。
ちなみに、「単位」で指定できる種類は次の通りです。
指定の仕方 | 戻り値(返ってくる値) |
"Y" | 期間の年数 |
"M" | 期間の月数 |
"D" | 期間の日数 |
"MD" | (使用不可)←仕様的な問題あり |
"YM" | 開始日から終了日までの月数(年と日は無視) |
"YD" | 開始日から終了日までの日数(年と月は無視) |
2-4.「開始日」<「終了日」で入れること
当然ですが、「開始日」は「終了日」よりも前の日を指定しましょう。
終了日よりも後の日を指定すると、どんな単位を指定しても「#NUM!」エラーになってしまいます。
3.知りたいこと別「単位」の指定の仕方
ここでは、もう少し「単位」の使い分け方を「知りたいこと別」に掘り下げてみます。
3-1.単位で指定できるのは全部で5種類
単位で指定できるのは、「"Y"」、「"M"」、「"D"」、「"YM"」、「"YD"」の全部で5種類です。
まずは、単位別にそれぞれの返ってくる値を、例を見ながら確認します。
開始日をセルA1、終了日をセルB1としたとき、指定できる単位別に返ってくる値は、次の通りです。
- 「"Y"」:「終了日‐開始日」の「年数」
例)10年 - 「"M"」:「終了日‐開始日」の「月数」
例)130ヶ月 - 「"D"」:「終了日‐開始日」の「日数」
例)3980日 - 「"YM"」:「終了日‐開始日」の「月数」(繰上分切捨)
例)10ヶ月 - 「"YD"」:「終了日‐開始日」の「日数」(繰上分切捨)
例)327日 - 「"MD"」:仕様上の問題があり
3-2.知りたいこと別の単位の指定の仕方
以上を踏まえ、知りたいこと別の単位の指定の仕方です。
3-2-1.「年齢を知りたい」場合は「"Y"」
年齢を知りたい場合は、「"Y"」です。
月数や日数は切り捨てられ、「何年経過したか?」がわかります。
3-2-2.「経過月数を知りたい」場合は「"M"」
経過月数を知りたい場合には、「"M"」です。
日数は切り捨てられ、「何か月経過したか?」がわかります。
3-2-3.「経過日数を知りたい」場合は「"D"」
経過日数を知りたい場合には、「"D"」です。
純粋に、経過した日数を知ることができます。
3-2-4.「年関係なく月の差を知りたい」場合は「"YM"」
年の関係なく、「月数の差」を知りたい場合には、「"YM"」です。
年(12か月*年数)は切り捨てられます。
ただし、開始日の月が終了日の月よりも後の場合には、「終了日の月-開始日の月+12」が返ってきます。
2-2-5.「年関係なく日数の差を知りたい」場合は「"YD"」
年の関係なく、「日数の差」を知りたい場合には、「"YD"」です。
年(365日*年数)は切り捨てられます。
ただし、開始日の月日が終了日の月日よりも後の場合には、「終了日-開始日+365」が返ってきます。
4.「〇年〇ヶ月」としたい場合には
「〇年〇ヶ月」という形で求めたい場合には、数式を次のようにします。
これで、年数と月数が表示されるようになります。
ただ、数式を手打ちするのは面倒なので、コピーし貼り付け、引数を入れなおして使ってください。
そのほうが簡単です。
以上、参考になれば幸いです。
【口コミ・評判のいいExcel本の紹介】
「エクセル関数 やりたいこと」に関連したページは、次の通りです。。
- エクセル関数 やりたいこと はこちら