« 配列数式は使わない。作業セルを使う。 | トップページ | Excel2016 でユーザー設定リストへの登録 »

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 を足して「いまの年齢」とするかはケースバイケース。

|

« 配列数式は使わない。作業セルを使う。 | トップページ | Excel2016 でユーザー設定リストへの登録 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: Excel で満年齢を計算する。(DATEDIF関数は使わない):

« 配列数式は使わない。作業セルを使う。 | トップページ | Excel2016 でユーザー設定リストへの登録 »