• ベストアンサー

エクセル関数について

今、仕事でエクセルを使って一覧表を作ろうとしています。 IF関数を使って、『生年月日が1994年4月17日の子が、16歳になる年の4月1日(高校に入学する年の4月1日)~22歳になる年の3月31日(大学を卒業する年の3月31日)の期間に該当すれば、○を表示させる』という計算をさせたいと思っています。これはIF関数で求めれますか?または他の関数を使うんのでしょうか?教えてください。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

検証対象が不明の為、当日を使用しています。 (例)=IF((DATE(YEAR(誕生日)+16,4,1)<=TODAY())*(DATE(YEAR(誕生日)+23,4,0)>=TODAY()),"○","×")

noa8998
質問者

お礼

できました!!ありがとうございます!!本当に助かりました。 もうひとつ質問なんですが… 『1998年6月14日生まれの子が22歳になる年の3月31日(大学を卒業する年の3月31日)の期間に該当すれば、○を表示、ではなくその年月日を表示させたい』ときはどうすればよいのでしょうか?検証対象は当日です。 お忙しいところ申し訳ありませんが教えて下さい。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO2です。 早生まれ(1/1~4/1)を考慮して22歳となる年月日は、=IF(誕生日<=DATE(YEAR(誕生日),4,1),DATE(YEAR(誕生日)+21,4,2),DATE(YEAR(誕生日)+22,4,2)) 又、前回答で早生まれを考慮します。 =IF(誕生日<=DATE(YEAR(誕生日),4,1),IF((DATE(YEAR(誕生日)+16,4,1)<=TODAY())*(DATE(YEAR(誕生日)+22,4,0)>=TODAY()),"○","X"),IF((DATE(YEAR(誕生日)+16,4,1)<=TODAY())*(DATE(YEAR(誕生日)+23,4,0)>=TODAY()),"○","×"))

noa8998
質問者

お礼

ありがとうございます。助かりました!!

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

続き質問はマナー違反ですのでご注意下さい。 (例)ご質問の「その年月日が不明」ですが、当日を表示するのであれば、次の通りです。 =IF((DATE(YEAR(誕生日)+16,4,1)<=TODAY())*(DATE(YEAR(誕生日)+23,4,0)>=TODAY()),TODAY(),"")

noa8998
質問者

補足

その年月日というのは、ある生年月日の子が22歳のなる年の3月31日を迎える当日の日付のことです。

関連するQ&A