こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel / Access 関数及びVBAにて年齢の算出

Excel または Accessで、
日付(西暦)から現在の年齢を返してくれる関数はありますでしょうか?(VBAも可)
例:A1セルに1980/1/1と入力
 →ある式(関数)が埋め込まれたB1セルに27と表示される

または一発でなくても簡単に年齢を返してくれる方法をご存知の方、よろしくお願いします。

※本日午前中に別の質問をさせていただきましたが、
 そちらを締め切る前に再度質問させていただくこと、
 マナー違反かもしれませんがお許し下さい。

投稿日時 - 2007-04-13 15:19:48

QNo.2917799

すぐに回答ほしいです

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

Excelのdatedif関数ですね。

=datedif(誕生日, today(), "Y")
で今日現在の満年齢が出ます。第3パラメータのバリエーションにつ
いてはヘルプを参照して下さい。

投稿日時 - 2007-04-13 15:32:14

お礼

ご回答、ありがとうございます。

なるほど、これならばVBAを使用せずにセルに埋め込めますね。
大変助かりました。

投稿日時 - 2007-04-13 16:00:32

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(3)

補足:
[イミディエイト]
? GetAge("1949/05/01", "2007/04/30")
58

投稿日時 - 2007-04-13 15:50:10

お礼

ご回答、ありがとうございます。

VBAで実現するにはこういうった方法があるんですね。
大変参考になりました!

投稿日時 - 2007-04-13 16:01:15

[イミディエイト]
? GetAge("1949/05/01", "2007/04/13")
57

Public Function GetAge(ByVal Birthday As Date, ByVal Hiduke As Date) As Integer
  GetAge = DateDiff("yyyy", Birthday, Hiduke) + _
        (Format(Birthday - 1, "mm/dd") > Format(Hiduke, "mm/dd"))
End Function

私は、こんな関数を用いています。

投稿日時 - 2007-04-13 15:48:46

あなたにオススメの質問