• ベストアンサー

エクセルで年齢表示の方法

社員リストを作成しております。 今日現在の年齢をDATEDIF関数で計算して表示していますが、最後の引数を"Y"とすると45歳とか48歳となってしまいます。 これを45.3歳とか48.7歳といったような小数点付きで表示させるにはどのような引数を利用すればよいか解らず困っています。どなたか詳しい方、助けて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

誕生日ぎりぎりあたりで微妙に数値がおかしくならないためには、 整数部にdatedif(出生日,today(),"Y")を使うのは避けられないで しょうね。小数部の表記は「月数/12」なのか「日数/365.25」なの か…いずれにしろdatedif関数で、第3パラメータを月数を使うなら "YM"、日数を使うなら"YD"でしょう。 =datedif(出生日,today(),"Y")+datedif(出生日,today(),"YM")/12 みたいな感じ。 最後を12じゃなくて100で割ったら、45歳8ヶ月が45.08で32歳11ヶ月 が32.11になりますけどね。

kenchan2001
質問者

お礼

早速のご回答ありがとうございます。 No.2さんの回答で少しガッカリしていたところへgrumpy_the_dwarfさんの完璧な回答! 単純に年の部分と端数の部分を足せばよいのですね。 大変助かりました。どうもありがとうございました。

その他の回答 (2)

noname#64531
noname#64531
回答No.2

小数が、年を単位とする1未満の数字(月をあらわさないの)なら 引数を"D"とし、=DATEDIF( , ,"D")/365.25 あとは表示桁数をお好みに。 社員20歳~60歳の範囲でしたら誤差はなく 使用できると思います。

kenchan2001
質問者

お礼

早速のご回答ありがとうございます。 日数に直して365で割る方法ですか…。 エクセルなら気の利いた方法があると信じて質問したんですが残念です。

回答No.1

ちなみに45.3歳とは45歳と何ヶ月を意味するのでしょうか?