■ ○ヶ月後を出すには
1ヶ月後の日付を出したい場合、EDATE関数またはDATE関数を使
います。
方法1 EDATE関数
EDATE関数は○ヶ月後を出す関数です。
=EDATE (日付 ,
○
)
1か月後
=EDATE(日付,1)
1年後
=EDATE(日付,12)
方法2 DATE関数
(★★注!○ヵ月後、の場合はEDATE関数
を使うことが多いでしょう。理由は下記参照★★)
DATE関数では指定した数値(年・月・日)をシリアル値に変換できます。
=DATE(年 , 月
, 日 )
B列には指定日の1ヶ月後を出すので +1とします。
=DATE (YEAR(A1),
MONTH(A1)+1
,DAY(A1))
注:EDATE関数(○か月後を出す)と、DATE関数の違いについて
○か月後を出す、という方法においてEDATE関数でもDATE関数でも間違ってはいません。しかし、結果が異なる場合があります。
EDATE関数は○か月後(前)を出す関数なので、○か月後の同じ日(月末なら1か月後の月末)を返します。一方DATE関数はシリアル値を
返しそれを日付に変換するので次のような場合に異なる結果が出ます。
元日付 |
1か月後(EDATE関数) |
1か月後(DATE関数) |
2014/1/31 |
2014/2/28(1か月後の月末) |
2014/3/3
(2014/1+1/31
= 2014/2/31のシリアル値 → 2014/3/3) |
多くの場合、1か月後といえば1か月先の同じ日を出すので、EDATE関数が使われてると思います。(1か月定期も1か月後の同じ日の前日までなのでEDATE関数で出します。1/31に購入すれば2/27まで有効)こういったズレは○年後や○日後にはありません。
|
■ ○年後を出すには
DATE関数を使う
DATE関数を使うと○年、○月、○日
のシリアル値を返すことができます。
=DATE (年 , 月 , 日 )
例えば、指定月の3年後を出すなら年の部分で +3とします。
=DATE (年+3,
月, 日 )
A列の3年後を出す場合は、B列に以下の式を入力します。
=DATE (YEAR(A1)+3, MONTH(A1)
,DAY(A1))
■ ○日後を出すには
DATE関数を使う
DATE関数を使うと○年
、○月、○日
のシリアル値を返すことができます。
=DATE (年 , 月 ,
日
)
例えば、指定月の40日後を出すなら日の部分で +40とします。
=DATE (年,
月, 日+40)
A列の40日後を出す場合は、B列に以下の式を入力します。
=DATE (YEAR(A1), MONTH(A1)
,DAY(A1)+40
)
|