- ベストアンサー
年齢を割り出すエクセルの関数式を教えてください。
西暦で誕生日がわかっています。 誕生日はYYYY/MM/DDで入力されています。 ここで例えば2007/6/1現在の年齢を割り出したい のです。 式がわかる方、教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
年齢計算基準日(現在日) A1 生年月日 を A3 に入力して 年齢を B3に表示する場合 B3に =datedif(A3,$A$1,"Y") 書式設定をG/標準 で満年齢が表示されます
その他の回答 (4)
- oyaji-man
- ベストアンサー率34% (123/354)
2004/02/29 に生まれた方は 2007/02/27 で2歳なのか3歳なのか? 2007/2/27では まだ 2歳です 法律解釈上 誕生日の前日に1歳加齢するので 2004/02/29 に生まれた方は 2007/2/28 に 3歳になります。
お礼
勉強になりました。 ありがとうございました。
イミディエイト] ? 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
お礼
ありがとうございました。 GetAge関数は初めて知りました。 早速使用して処理して行きます。
- oyaji-man
- ベストアンサー率34% (123/354)
例えば2007/6/1 と入力されているセルを A1 として 誕生日が入力されているセルを B1 とした時の式は =DATEDIF(A1-1,B1,"Y") と なります。 年齢は誕生日の前日に加齢します。 例えば 2006/6/7 の誕生日の人は 2007/6/6 に1才になります。
お礼
ありがとうございました。 早速使用して処理して行きます。
- FEX2053
- ベストアンサー率37% (7991/21371)
隠し関数のDATEDIFを使うのが一番簡単なんですが。 誕生日をB1セル、年齢計算の基準日をA1セルとすると =DATEDIF(B1,A1,"Y") これで年齢が出てきます。DATEDIFはLotus1-2-3との互換性を確保する ための関数ですので、ヘルプには出てきません。また、月・日の計算 に問題があるので、月数・日数の計算をするにはお勧めできませんが、 年の計算なら、全く問題なく動作します。
お礼
ありがとうございました。 早速使用して処理して行きます。
お礼
ありがとうございました。 早速使用して処理して行きます。