生年月日から年齢の自動計算をしたいのにできない。
こんな悩みを持っている エクセルユーザーさんは意外と多いかも。
今回は便利な関数をつかって、生年月日から年齢を自動計算する方法について解説します。
『エクセルで生年月日から年齢の自動計算ができないときの対処法』
以下、ご一読ください。
生年月日から年齢の自動計算はできない!?
生年月日の情報が手元にあって、それをもとに年齢を自動計算して何かに役立てたいとき、エクセルで年齢計算はできないのか?
生年月日から 年齢を計算 するには、DATEDIF関数 を使います。
DATEDIF関数
DATEDIF は「ウラ関数」?
DATEDIF関数 をご存じない方、あるいは「見つからない」という方も多いかもしれません。
それもそのはず。
実はこの DATEDIF関数、[関数の挿入][関数の貼り付け]ダイアログでは表示されず、セルに直接入力しないといけない「ウラ関数」なのです。
一説には他のアプリケーションとの互換性を保つためにサポート的に用意されたものだとか。
DATEDIF関数の書式は;
具体例で説明しましょう。
本日時点での満年齢を算出
例として、今日の時点での満年齢を生年月日から算出してみましょう;
終了日(第二引数)=今日の日付(TODAY())
ここまで 大丈夫でしょうか?
第三引数の「単位」にはバリエーションがあり、状況によって使い分けが可能です。
単位 | 戻り値 |
"Y" | 期間内の満年齢 |
"M" | 期間内の満月数 |
"D" | 期間内の満日数 |
"MD" | 1か月未満の日数 |
"YM" | 1年未満の月数 |
"YD" | 1年未満の日数 |
今回の例の場合は、"Y" を引数として入力します。
下のような表があった場合、セルB2にはどのような式が入るでしょうか?
正解は、「=DATEDIF(A2, TODAY( ), "Y")」です。
▲年齢が自動計算された!
※ 運用上の注意点として、このDATEDIF関数で求められる「満年齢」は誕生日が来ると1歳加算される仕様になっています。
「なにがいけないの?」と思われる方もいらっしゃると思います。
実は、「年齢計算ニ関スル法律」では、満年齢は誕生日の前日に1歳が加えられるとなっています。これに準じた場合、上記の計算式は「=DATEDIF (A2, TODAY( )+1, "Y")」とする必要があります。
小学生のころ、4月1日生まれの子はひとつ前の学年に入っていましたよね。アレです。
ま、そこまで厳密にこだわるならばですが。
『エクセルで生年月日から年齢の自動計算ができないときの対処法』はここまで。
その他の関連記事と合わせて仕事や趣味に役立ててください。
関連記事・広告