[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『生年月日を年齢に変換する数式』(ぺもと)
見出しのとおり、生年月日を年齢に変換する数式を求めています。
20150424 のように、数字の羅列で生年月日を記述しています。
隣のセルに年齢を求める数式を入れて、うまくいくものと、いかないものがあります。
=DATEDIF(DATE(INT(A1/10000),MOD(A1/100,100),MOD(A1,100)),DATE(2015,4,24),"Y")
という数式を入れました。
ところが、1900年代の生年月日は年齢が出るのですが、1800年代の生年月日の年齢は#NUM!と出てしまいます。
なぜこうなるのかわからないのでこちらで質問させていただきました。
ご回答よろしくお願いいたします。
< 使用 Excel:Excel2007、使用 OS:Windows7 >
Windows版のExcelでは1900/1/1以降(オプションで「1904年から計算する」にチェックを入れるかMAC版の場合は1904/1/1以降)を 日付データとして扱いそれ以前は日付として扱っていないため1800年代の場合は#NUMとなる。 (ねむねむ) 2015/04/24(金) 14:23
かぶりましたが。
エクセルは日付を1900/1/1(あるいは設定で 1904/1/1 も可能)から管理しています。 したがって、それ以前のものは日付とは認識されません。
セルに 1900/1/1 といれると 右寄せで表示されますね。日付型と認識されたからです。 セルに 1868/10/10 といれてみましょう。 左寄せですね。単なる文字列とみなされています。
(β) 2015/04/24(金) 14:24
1900年1月1日以降なら =DATEDIF(TEXT(A1,"0000-00-00")*1,DATE(2015,4,24),"Y") でも。1800年代の年齢算出は「1800年代 年齢 計算」で検索すると たくさん出てきますのでそちらを参考に・・・。 (se_9) 2015/04/24(金) 14:31
なるほど、1800年代は日付と認識されないんですね。知りませんでした。
また新たに勉強になりました、ありがとうございました。
(ぺもと) 2015/04/24(金) 14:37
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.