- ベストアンサー
2010年の時自分は何歳だったかを表示させたい
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
YEAR(TODAY())で現在の年を求める事が出来ますから >セルB2に2015 は不要で、 >セルA2に29 >セルC2に2010年 の2つがあれば事足ります。 その場合の関数式は次の様になります。 =$A2-YEAR(TODAY())+$C2 但し上記の関数では、A2セルに入力されている年齢が、今年の誕生日を過ぎてからの年齢である必要があります。 しかし実際には、現在の歳が29歳であっても、今日が今年の誕生日前なのか以降なのかによって年齢が異なって来ますし、当時の年齢を求めたい日の日付が誕生日前なのか以降なのかによっても年齢が異なって来ます。 又、上記の関数では、A2セルやC2セルに年齢や西暦年を入力していない場合でも計算が行われてしまいます。 ですから、やり方を変えて以下の様にされては如何でしょうか? まず前提条件として、A2セルには現在の日付における年齢を入力し、C2セルには「その日付の当時に自分は何歳であったのかを求めたい日付」を例えば2015/10/24等の様な形式で入力し、B2セルには自分の誕生日の月日を10/24か10月24日などの様な形式で入力するものとします。 尚、B2セルにその様に入力しますと、Excelが自動的に西暦年を追加して2015/10/24などの様な形式のデータに変換してしまいますが、構わずにそのまま作業を続けて下さい。 次に、当時の年齢を表示させたいセルに次の様な関数を入力して下さい。 =IF(AND(COUNT($A2,$B2,$C2)=3,$B2>=1,$C2>=1),IF($A2=INT(ABS($A2)),IFERROR(DATEDIF((YEAR(TODAY())-$A2-(TEXT(TODAY(),"m/d")-TEXT($B2,"m/d")<0))&"/"&TEXT($B2,"m/d"),$C2,"Y"),"誕生前"),""),"") 以上です。
お礼
ご回答ありがとうございました。