年齢や経過日数・勤続年数の計算というのは業務の内容によっては頻繁に出てくるので、計算方法を紹介しているWebサイトも少なくありません。
ところがメジャーなサイトでも、間違った方法を紹介していることがあるので注意が必要です。
単純に引き算をしてユーザー定義書式で「yy歳」と設定すればOK、みたいなことを書いてあるサイトがあるのですが、これではダメです。今年の自分の誕生日から生年月日を引いてみればすぐにわかることです。この計算式では誕生日の次の日にならないと年齢が加算されません。引き算をするときに調整を行う必要があります。
年齢計算をするDATDIF関数の使い方と注意点
誕生日に一つ年を取るという計算をするのであれば、引き算をして調整するよりも、関数を使う方が間違いが少ないと思います。
※A1セルに生年月日、B1セルに年齢を求めたい年月日、C1セルに年齢を表示する例 C1セルに「=DATEDIF(A1,B1,"Y") 」と入力
DATEDIF関数は、
開始日(第1引数)から
終了日(第2引数)までの期間を
第3引数で指定された単位で
表示してくれます。
ただし、この関数は[関数の挿入][関数の貼り付け]ダイアログには表示されないので、必ずキーボードから手入力しないといけません。またほとんどのバージョンのヘルプにも記述されていません。
第3引数には以下のような単位を指定します。
"Y" : 期間内の満年数
"M" : 期間内の満月数
"D" : 期間内の日数
"YM" : 経過した1年未満の月数
"YD" : 経過した1年未満の日数
"MD" : 経過した1月未満の日数
(大文字でも小文字でもかまいません)
例えば、
「○歳○ヶ月」というような表示をするのであれば、
「=DATEDIF(A1,B1,"Y") & "歳" & DATEDIF(A1,B1,"YM") & "ヶ月"」
といった記述をします。
法律上の年齢計算について
ところで、
日本の法律(年齢計算ニ関スル法律・年齢のとなえ方に関する法律)上は、年齢というのは誕生日の前日で加算されるものですから、計算結果の利用目的によってはDATEDIF関数を使った結果に1日加算するなど調整が必要になります。年齢を元に何らかの計算するような場合、1日違うだけで計算結果が変わってしまう可能性もありますから、年齢計算を法律に則って行うのか、一般慣習に基づいて行っていいのかよく調査してから計算式を入力する必要があります。
- Newer:表の中の文字を縦書きにする
- Older:頭語を入力しても結語が出ない−オートコレクト
Home » Excel(エクセル)の関数・数式の使い方 » 日付の処理・計算 » 生年月日から年齢を計算−DATEDIF関数