見出し画像

[Excel]誕生日の前日に年を取るのはなんで?、と思った方へ(WEB記事やエクセル本は不正確なものが多いので注意)

期間計算に関する記事一覧はこちら

以下は、「初日不算入の原則」や「年は誕生日の前日に取る」ことをご存じの方は、スルーしてください。

「誕生日の前日に年を取るのはなんで?」と思った方は、ぜひ、どうぞ。
かなり細かい(くどい)説明になりますが、ご寛恕を。

目次

  1. 基本は、初日不換算

  2. 年齢は誕生日が起算日となる

  3. 【注意】WEBサイトやエクセル本には「不正確な説明」が多い

  4. エクセルの知識だけでは正しい答えが出せない

  5. 【年数計算・年齢計算まとめ(DATEDIF関数)】

【説明】
DATEDIF関数は、「日付1」から「日付2」までの期間を算出します。
=DATEDIF(日付1,日付2, ”Y”)のように最後が「”Y”)」であれば「満年数」が出ます。(詳しくは過去記事「【エクセル】経過年数(満年数)の出し方 DATEDIF関数 その1」参照)

基本は、初日不換算

注意が必要なのは「日付1」が「1日目」ではないということです。
「1日目(起算日)」は、「日付1の翌日」になります。

一般的には、事実発生日が日付1であれば、日付1は0日目となり、翌日が1日目(起算日)になります。
これは、「初日不算入の原則」によるものです(民法第140条)。
DATEDIF関数の計算は、この「初日不算入の原則」に合致しています。
(詳しくは過去記事「【エクセル】DATEDIF関数の注意点 「開始日」は「1日目」ではない」参照)

また、期間は「その末日の終了をもって満了」とあります(同141条)。
「1年間」なら、通常365日目の終了をもって満了となります。

民法
第140 条(暦法的計算による期間の起算日)
日、週、月又は年によって期間を定めたときは、期間の初日は、算入しない。ただし、その期間が午前零時から始まるときは、この限りでない。
第141条(期間の満了)
前条の場合には、期間は、その末日の終了をもって満了する。

従って、R4/4/1が事実発生日(日付1)であれば、以下の通りとなります。

R4/4/1は0日目(初日不算入)であり、
1日目はR4/4/2、
365日目はR5/4/1です。
365日目が満了するR5/4/1の24時(午後12時、つまり夜中の12時)で1年が満了するわけです。
R5/4/1の24時は、日付としては当然R5/4/1になるので、同日が満1年の到来日となります。
 *R5/4/1~R6/4/1だと、R6/2/29が入るため例にしていません。

年齢は誕生日が起算日となる

しかしながら、年齢の計算にはこれが当てはまりません。

年齢は「年齢計算ニ関スル法律」(民法の附属法)で規定されています。

「年齢計算ニ関スル法律」
① 年齢ハ出生ノ日ヨリ之ヲ起算ス
(②以下略)

「出生ノ日ヨリ之ヲ起算ス」とは、出生の日、つまり誕生日を1日目とするということです(生まれた時間は関係ありません。)。
満了の考え方は民法141条と同じです。

するとどうなるか、上と同様に考えてみます。

R4/4/1が誕生日(日付1)であれば、
1日目はR4/4/1(誕生日当日)、
365日目はR5/3/31(1年後の誕生日の前日)です。
365日目が満了するR5/3/31の24時(午後12時、つまり夜中の12時)で1年が満了(=満1歳)します。
R5/3/31の24時は、日付としては当然R5/3/31になるので、同日が満1歳になる日となります。
R5/3/31に満1歳になるということは、法的にはR5/3/31が始まる同日午前0時が法的には満1歳になる瞬間といえます。(4/2になる直前に生まれても、3/31になった瞬間、年を取るということになるので、一般的には、ちょっと違和感がありますけど。)

そのため、
経過年数を計算する通常の計算式 =DATEDIF(R4/4/1,R5/4/1,”Y”)
で計算すると、誕生日に満1年が到来することとなってしまいます。

これは誤りです。
=DATEDIF(R4/4/1,R5/4/1,”Y”) 
という上の式では、R4/4/1の次の日が1日目となるため、「年齢計算ニ関スル法律」と齟齬が出ます。
R4/4/1を1日目とするには、R4/4/1の前の日であるR4/3/31を、計算式に入れる必要があります。

つまり、
=DATEDIF(R4/3/31,R5/4/1,”Y”)
となります。

R4/3/31は R4/4/1から1日引けばいいので、
=DATEDIF(R4/4/1-1,R5/4/1,”Y”)
となります。

実務では、計算式に日付を直接入れるのではなく、日付の入っているセルを指定します。

そのため、上の式を一般化すると、
=DATEDIF(誕生日-1,基準日,”Y”)
となります。

これで、満年齢が正確に計算できます。

【注意】WEBサイトやエクセル本には「不正確な説明」が多い

満年齢の計算について、残念ながら、多くのサイトで「不正確な説明」がなされています。
2024/1/20現在、Yahoo!で「エクセル 年齢計算」と検索した結果の1ページ目の「10サイトすべて」が、不正確な説明となっていました。
つまり「年齢は =DATEDIF(誕生日,基準日,”Y”) で出せる」という説明です。
(一部、DATEDIF関数以外の説明もありますが、考え方は同じでした。)

中には、大手パソコンメーカーのサイトや、経済大学のシステム部門エクセル本を出しているYouTuber氏(諸々の知識には敬意を表しています)のサイトもあり、これは驚きでした。
関数の説明が目的であるためとは思いますが、せめて法的な年齢の計算方法にも触れてほしいところです。(そういう意味では「不十分な説明」ともいえます。)

世間的には「年齢は誕生日に取る」と捉えられているでしょうから、これらのサイトが全くの誤りとはいえません(「満年齢の計算方法」とも謳っていませんから。)。
しかしながら、エクセルで計算するということは、計算結果は、何らかの業務(手続き)で利用すると考えてよいでしょう。
そして、一般的な業務(手続き)での年齢の数え方は、そのほとんどが、法律(年齢計算ニ関スル法律)に則していると考えるべきでしょう。
ならば、そこはやはり、法律に則して計算すべきと考えます(でないと、ミスが生じます。)
法律を知らないのかもしれませんが、法的に正確さを欠く計算式を教示しているのは残念です。

*「エクセル 満年齢」で検索しても、ほぼ同様でした。
唯一正しいと思われるのが「日経XTECH」(同日時点で3番目)。
「4月1日生まれ」の対応もばっちり、Excelで満年齢を計算する方法
1ページ目は上と同じ一般的な計算式が紹介されていますが、2ページ目へのつなぎには「法律に適合させるには?」とあるので、本記事と同じ説明がなされていると思われます(会員制なので未確認)。
満年齢の計算は何も4月1日生まれに限ったことだけではありませんが、一番「わかりやすい日」としてタイトルに入れているのでしょう。

エクセルの知識だけでは正しい答えが出せない

当り前ですが、エクセルの知識だけでは正しい答えは出せない、ということです。

一般的には「誕生日に年を取る」で問題ないでしょう。
しかしながら、公務員としては、注意が必要です。
年齢の計算(や起算日の捉え方)は、「基本のキ」ともいえます。

この項、選挙を担当した人には常識かもしれません。

選挙権は満18歳からになりましたが、「17歳」でも投票が可能な人もいます。
18歳の誕生日の前日が投票日である人たちです(法的には投票日には18歳になっているため。)。
NHK選挙WEB「17歳」でも投票できる?!」
(実際は18歳なので「17歳」と括弧に入れているのでしょう。)

もし、こういう人たちに選挙権がないとしてしまったら大問題で、ニュースになってしまいます(基本的権利の行使の場である選挙は、小さなミスもニュースになりがちです。)。
もっとも、この手のニュースを見たことはないので、投票対象者を抽出するプログラムは、当然、このことも十分考慮されていると思われます。

一方、(話は逸れますが)「投票日の翌日が18歳の誕生日である人に、誤って期日前投票を認めてしまった」という記事は散見されます(投票日の翌日が18歳の誕生日である人は期日前投票はできません。ただし、不在者投票はできます。このあたり、複雑です。)
参議院選挙 7月に18歳の誕生日、いつから投票できる?…選挙権と年齢の関係

年齢は違いますが、被選挙権でも同様の扱いです。
お酒やたばこは満20歳未満は不可ですが、これも同様。
(刑法系は一般の公務員には関係が薄いかもしれません。)

注意が必要なのは、「募集関係」などでしょうか。

「R5/9/1時点で満40歳未満の人は応募可」という条件に、R5/9/2が40歳の誕生日の人は対象となるか?ならないか?

少し考えてみてください。
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
答えは、「ならない」。

9/2が誕生日の人は、前日の9/1に年を取ります。
R5/9/2が40歳の誕生日ならば、R5/9/1に満40歳となり、「満40歳未満」ではなくなります。(「満40歳以下」ならOKです。)

かなり昔(高校生か大学生のころ)、ミステリー作家佐野洋氏(故人)の短編で、ミスコンか何かの募集での年齢がテーマ、というものがありました。
上と同じで、●月●日で●歳未満、という応募に対して、翌日が●歳の誕生日の人が選ばれたが、問題ないか、みたいな話でした。
詳細は失念しましたが、妙に頭に残っています。

こういった募集案件は、具体的に「●年●月●日から●年●月●日生まれの人」と記載すると誤解(人による解釈の違い)が生じません。
実際、職員採用試験などは、そうなっていると思います。
「●月●日で●歳未満」は、人による解釈の違いが生じる曖昧な表現(一般と法律で捉え方が違う)であり、法律的に受け止めて応募しなかった人がいるかもしれず、公平性の観点で問題になりえます。

「誕生日の前の日に年を取る」に違和感がある方でも、「4月1日生まれは前の学年になる」という話は聞いたことがあるでしょう(これも公務員なら常識でしょう。)。

これは、前述の「年齢計算ニ関スル法律」と「学校教育法」の合わせ技によるものです。
詳しい説明は以下に譲ります。
4月1日生まれの子どもは早生まれ? 参議院法制局
4月1日生まれの児童生徒の学年について 文部科学省

余談ですが、先日の皇室関係のニュースでは、テレビや新聞の多くが「●歳の誕生日を迎えた」と表現していました(実際は敬語表現。以下同。)。
誕生日に、●歳になった、と表現すると厳密には誤りになってしまいますので、マスコミとしてはそれを避け、でも、誕生日の前日に「満●歳になった」と報道するわけにもいかないので、こういう表現になったのでしょう。なるほどな、と思いました。

一方で、同じ系列でも、朝日新聞やテレビ朝日が「■日、●歳の誕生日を迎えた」旨の表現をしたのに対し、Aera.dotは「■日で●歳になった。」と表記しており、年をいつ取るかについては、マスコミでも知識にばらつきがあるようです。(テレビや新聞は校閲部が機能している一方、WEB系は概して記述に甘さがある印象です。)

日常の誕生日のお祝いの席などで「実は昨日(の0時に)既に●歳になっている」なんて言うのは野暮(というか嫌がられる)ですが、業務上は、満年齢がいつからであるか、しっかり意識しておきたいものです。
そのためにも、法律をきちんと理解し、それにあった計算式を作れることが望まれます。

以上、長くなってしまいましたが、理解のお役に立てば幸いです。


この記事が気に入ったらサポートをしてみませんか?