パソコンじいちゃん

最近は個人的な日記になっています。
初心に帰り、パソコン操作の役に立つ内容になるよう頑張ります。

1900年より前に生まれた人の年齢計算

2017年01月28日 | 日記

「家系図」を作成している方からの質問です。


1900年以降に生まれた人は、DATEDIF関数で簡単に年齢計算ができます。
1900年以前生まれの人にそのまま適用すると「エラー」となって、年齢が計算できません
どうすればエラーが出なくなり、年齢計算ができるようになるのでしょうか?



パソコンは、1900/1/1を1とした「シリアル値」で年月日を計算(管理?)しています。
1900年以前をマイナスとしては計算できないので、エラーとなるのかな?
1900年までの年齢を、1900年以降の年齢にプラスして算出しようとしましたが無理でした!
 



400年先が同じ曜日となることを利用して年齢計算が出来るようです。
(うるう年が完全に一致するらしい)


2017年1月28日現在で年齢を計算してみました。(誕生日が1900年以前・以後に関係なく年齢計算ができます)
全ての年月日を400年先に移動させて計算させています。
使用した関数と式は次の通りです。

=DATEDIF(DATE(B5+400,MONTH(C5),DAY(D5)),DATE(YEAR(TODAY())+400,MONTH(TODAY()),DAY(TODAY())),"y")

    DATE(B5+400,MONTH(C5),DAY(D5)  → 1900年より前の誕生日も400年後に換算

    DATE(YEAR(TODAY())+400,MONTH(TODAY()),DAY(TODAY()))  → 今日の日付を400年後に換算 

    B5 に実際の誕生年
    C5 に誕生月
    D5 に誕生日   が入力されているものとした場合です。



1900年以前の和暦も自動表示させるようにしてみました。(換算表を作成して月日と合成しています) 
明治、大正、昭和、平成の元年と終わりの日を表示させてみましたが、正確には一致しませんでした。
通常の使用にはまったく問題はないと思います。

氏名  生    を入力すれば、和暦と年齢が自動で表示されます


  


興味のある方は、ファイルを下記からダウンロードしてください。

1900年より前に生まれた人の年齢計算.xlsx

「計算式表示」シートで細かい設定が確認できるはずです。


久しぶりに 「 Excel 」で遊んで、頭の体操になりました。





最新の画像もっと見る

1 コメント

コメント日が  古い順  |   新しい順
DATEDIF関数 (さそり座)
2017-02-13 15:12:01
こんにちは
1900/1/1以前の年齢が分かるとは凄いですね
好奇心旺盛なので早速年齢計算表をダウンロードさせて貰いました
色々歴史上の人物の誕生日を調べ入力して遊んでいます
574/2/7生まれの聖徳太子の年齢が分かって驚いています
今日のブログに紹介したいと思います
有難うございました
返信する

コメントを投稿