Excel で満年齢を計算する。(DATEDIF関数は使わない)
この記事は自分用の覚書です。
(Windows 8.1 Pro 64ビット + Excel2016 Office365 Business サブスクリプション バージョン1710(ビルド8625.2139))
「今年いくつになるか?」という「満年齢」(生まれた年を 0 として、以後の年の誕生日がきたら 1つ 増える年齢)を求める。
1.YEAR 関数で生年月日から「年」を抜き出す。
2.YEAR 関数と TODAY 関数で今日の日付から「年」を抜き出す。
3. 2. から 1. を引く。これで「今年いくつになる」かがわかる。
「いまいくつなのか」を求める。
本年の誕生日がきていない場合
満年齢から 1 を引く。(満年齢未満ということ。)
「本年の誕生日がきていない」とは、「今日の日付(シリアル値)」が「本年の誕生日(シリアル値)」より小さいということ。
IF 関数または IFS 関数で対応。
・DATE 関数で「本年の誕生日」を生成
DATE(E2,MONTH(C2),DAY(C2))
誕生日を過ぎている場合
「満年齢には達している」ので、そのまま「(翌年の誕生日まで)満年齢をいまの年齢」とするか、「(本年の)満年齢は超えた」と考えて 1 を足して「いまの年齢」とするかはケースバイケース。
| 固定リンク
コメント