• ベストアンサー

年齢を割り出すエクセルの関数式を教えてください。

西暦で誕生日がわかっています。 誕生日はYYYY/MM/DDで入力されています。 ここで例えば2007/6/1現在の年齢を割り出したい のです。 式がわかる方、教えてください。

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

  • ベストアンサー
  • outerlimit
  • ベストアンサー率26% (993/3718)
回答No.1

年齢計算基準日(現在日) A1 生年月日 を A3 に入力して 年齢を B3に表示する場合 B3に =datedif(A3,$A$1,"Y")  書式設定をG/標準 で満年齢が表示されます

ringsjapan
質問者

お礼

ありがとうございました。 早速使用して処理して行きます。

その他の回答 (4)

  • oyaji-man
  • ベストアンサー率34% (123/354)
回答No.5

2004/02/29 に生まれた方は 2007/02/27 で2歳なのか3歳なのか? 2007/2/27では まだ 2歳です 法律解釈上 誕生日の前日に1歳加齢するので 2004/02/29 に生まれた方は 2007/2/28 に 3歳になります。

ringsjapan
質問者

お礼

勉強になりました。 ありがとうございました。

noname#140971
noname#140971
回答No.4

イミディエイト] ? GetAge("2004/02/29", "2007/02/27") 2 ? GetAge("2004/02/29", "2007/02/28") 3 ? DateDiff("yyyy", "2004/02/29", "2007/02/27") 3 ? DateDiff("yyyy", "2004/02/29", "2007/02/28") 3 さて、2004/02/29 に生まれた方は 2007/02/27 で2歳なのか3歳なのか? 余り、年齢計算には詳しくありません。 よって、下記の GetAge関数には余り自身がないのですが・・・。 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

ringsjapan
質問者

お礼

ありがとうございました。 GetAge関数は初めて知りました。 早速使用して処理して行きます。

  • oyaji-man
  • ベストアンサー率34% (123/354)
回答No.3

例えば2007/6/1 と入力されているセルを A1 として 誕生日が入力されているセルを B1 とした時の式は =DATEDIF(A1-1,B1,"Y") と なります。 年齢は誕生日の前日に加齢します。 例えば 2006/6/7 の誕生日の人は     2007/6/6 に1才になります。

ringsjapan
質問者

お礼

ありがとうございました。 早速使用して処理して行きます。

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.2

隠し関数のDATEDIFを使うのが一番簡単なんですが。 誕生日をB1セル、年齢計算の基準日をA1セルとすると =DATEDIF(B1,A1,"Y") これで年齢が出てきます。DATEDIFはLotus1-2-3との互換性を確保する ための関数ですので、ヘルプには出てきません。また、月・日の計算 に問題があるので、月数・日数の計算をするにはお勧めできませんが、 年の計算なら、全く問題なく動作します。

ringsjapan
質問者

お礼

ありがとうございました。 早速使用して処理して行きます。

関連するQ&A