Excelで契約日と終了日を管理しようとして、ちとはまったのでメモ。
やりたいことは年単位の契約で、契約日から起算して契約終了日を計算して表示したい。
例えば契約日が2013/7/1 なら終了日は2014/6/30 と表示する。
翌年だから契約日のセルの日付に1年加算して。。。
例)セルA2に「2013/7/1」
=DATE(YEAR(A2)+1,MONTH(A2),DAY(A2))
と、こんな感じにしてみれば。。。。
結果:2014/7/1
あれ、月日が一緒。そうか、1年足すと同じ日なんだな。あたりまえか。契約終了日は 一日前の2014/6/30にしたいんだな。。。。
という事で、日付の方に364日を足してみる。
=DATE(YEAR(A2),MONTH(A2),DAY(A2)+364)
結果:2014/6/31
今度はよさそうだ。でも、うるう年はこれだとまずいんじゃ。。。
日付を2015/3/1にして試してみると。。。
結果:2016/2/28
ああ、やっぱり。2016年はうるう年。ここは2/29にならないとまずい。
うるう年とか判定かけて、日数計算して、366日にして、そうして、こうして、うう、メンドウだなって思ったけど、よく考えたら、こうすりゃいいのに気が付いた。
=DATE(YEAR(A2)+1,MONTH(A2),DAY(A2)-1) 結果:2016/2/29
単純に1年足して、1日引く。これでうるう年も大丈夫。