[Excel 2016/2013/2010]
EDATE関数を使用すると、指定した日付を基準に、○カ月後や○カ月前の日付を求めることができます。
スポンサーリンク
作例…納品日とレンタル期間から返却期限を計算する
図1では、「納品日」に「契約月数」を加えて、「返却期限」を求めています。EDATE関数の引数[開始日]に「納品日」のセルC3、[月]に「契約月数」のセルD3を指定します。
[開始日]から[月]数前後の日付を求める
=EDATE(開始日, 月)
セルE3 | =EDATE(C3,D3)
メモ
日付の表示形式を設定しよう
新しいセル(表示形式が[標準]のセル)にEDATE関数を入力すると、「シリアル値」と呼ばれる数値が表示されます。 日付の表示に変えるには、日付の表示形式を設定してください。
関数解説…EDATE関数
書式
=EDATE(開始日, 月)
[開始日]から[月]数後、または[月]数前の日付を求めます。結果はシリアル値で返されるので、適宜日付の表示形式を設定する必要があります。
■引数
引数 | 指定 | 説明 |
---|---|---|
開始日 | 必須 | 計算の基準になる日付を指定 |
月 | 必須 | 月数を指定。正数を指定すると月数後、負数を指定すると月数前の日付が求められる |
使用例
数式 | 結果 | 説明 |
---|---|---|
=EDATE("2017/11/18",-2) | 2017/9/18 | 「2017/11/18」の2カ月前 |
=EDATE("2017/11/18",-1) | 2017/10/18 | 「2017/11/18」の1カ月前 |
=EDATE("2017/11/18",0) | 2017/11/18 | 「2017/11/18」当日 |
=EDATE("2017/11/18",1) | 2017/12/18 | 「2017/11/18」の1カ月後 |
=EDATE("2017/11/18",2) | 2018/1/18 | 「2017/11/18」の2カ月後 |
=EDATE("2017/10/31",1) | 2017/11/30 | 「2017/11/31」は存在しないので 月末日の「2017/11/30」が返される |
29日、30日、31日に注意!
1カ月の日数はバラバラなので、29日、30日、31日の○カ月前や○カ月後を求める場合、該当の日付が存在しないことがあります。EDATE関数は、該当の日付がない場合に、月末の日付を返します。
- 28日:常に28日の日付が返る
- 29日:うるう年以外の年の2月は28日の日付が返る
- 30日:2月は28日か29日の日付が返る
- 31日:2月は28日か29日、4、6、9、11月が30日の日付が返る
スポンサーリンク