こんばんは。
エクセルは簡単な関数程度しか使えませんが、教えていただけると助かります。
今、生年月日から各健康健診が受けられるかをエクセルで返せるようにしたいのですが、検診ごとに対象が違い困っています
検診は複数あり、関数で組むかデータベースで返すか悩んでいます
例
(1)一般検診・・・25歳以上70歳未満が対象
(2)××検診・・・20歳以上50歳以下、かつ年齢偶数、かつ女性のみ
・・・・
また、年齢偶数というのは今日現在ではなく、年度ごとによって分けられています
1980/4/2~1981/4/1 =29歳 奇数
1981/4/2~1982/4/1 =30歳 偶数
例(1)に関してはIFで絞り込んだのですが、例(2)は理論式がめちゃくちゃになってしまいました・・・
データベースを使おうかと思い、生年月日からVLOOKUPで探そうとしたんですが、そのデータベースが相当な量になってしまいます
一般検診 ××検診 ○○検診 ◇◇検診
1980/4/2 ○ × × ×
1980/4/3 ○ × × ×
~
1981/4/2 ○ ○ ○ ○
これを延々とやるのはさすがに厳しいのではないかと思ってます・・・
(3万くらいいきました・・・。間違えたらおしまいという感じです)
イメージとしては・・・
名前 生年月日 性別 一般検診 ××検診 ○○検診 ◇◇検診
○○ 1980/8/8 女 ○ × × ×
◇◇ 1989/9/9 男 × × ○ ○
生年月日を入力してうけられる検診には○、受けられない検診には×
を返せるようにしたいのです
もしよろしければお力添えいただければと思います
よろしくお願いいたします
No.1ベストアンサー
- 回答日時:
こんばんは
>検診は複数あり、関数で組むかデータベースで返すか悩んでいます
エクセルのIF関数でも、データベースでも、基本的な考え方は同じです。
>年齢偶数というのは今日現在ではなく、年度ごとによって分けられています
4月1日の時点での年齢を求めればOKです。
DATEDIFという関数が使えます。
http://www.relief.jp/itnote/archives/000423.php
http://maglog.jp/excel/Article223046.html
なお、今年の4月2日は、以下の数式で得られます。
=DATE(YEAR(TODAY()),4,1)
>かつ年齢偶数
mod(年齢,2)=0
なら年齢は偶数です。
実際に運用するには、性別の右の列(以下の説明ではD列)に「年齢」という列をもうけておくと便利です。
D2の数式は以下のようになります。
=DATEDIF(B2,DATE(YEAR(TODAY()),4,1),"Y")
これらを組み合わせると、「××検診」の二行目は
=IF(AND(20<=D2,D2<70,C2="女",MOD(D2,2)=0),"○","×")
となります。
rukukuさま
ご回答、ありがとうございます!
なるほど、4/1時点で考えれば良いのですね
ありがとうございます
また、年齢なのですが、その検診日が人によって違うので
データを常に更新したいと考えています
つまり、年齢はその検診日の年齢表記にしたいのです
その場合はどうすればよいでしょうか?
恐れ入りますが、ご回答いただけますと助かります
No.2
- 回答日時:
訂正です
4/1日生まれの人をどう扱うかと考えているうちに記述を間違えました。
>なお、今年の4月2日は、以下の数式で得られます。
>=DATE(YEAR(TODAY()),4,1)
今年の4月2日を得るには
=DATE(YEAR(TODAY()),4,2)
です。
年齢を計算する式については、先ほどの回答(↓)の通りです。
=DATEDIF(B2,DATE(YEAR(TODAY()),4,1),"Y")
年齢は、誕生日の「前日」加算されます。
http://koyomi.vis.ne.jp/doc/mlwa/200804020.htm
http://www5d.biglobe.ne.jp/Jusl/TomoLaw/NenreiKa …
しかし、DATEDIF関数は指定された「その日」との差を計算します。
法律による年齢のルールととDATEIDIF関数の微妙な違いによって、調整が必要になります。
わざわざ訂正ありがとうございます!
年齢は誕生日の前日加算なんですね・・
それも初めて知りました・・・
本当にありがとうございます!
No.3
- 回答日時:
こんばんは!
質問内容の解釈が間違っていたらごめんなさい・・・
一番引っかかったのは
>また、年齢偶数というのは今日現在ではなく、年度ごとによって分けられています
1980/4/2~1981/4/1 =29歳 奇数
1981/4/2~1982/4/1 =30歳 偶数
というところです。
つまり年度末の4/1での年齢という解釈でいいのだと判断して
↓の画像のような表を作ってみました。
(※表では 1981/4/2~1982/4/1 =30歳 の部分が28歳になってしまいますけど、どちらが正しいのかわかりません)
作業列として、D列に実年齢・E列に年齢偶数を挿入しています。
実年齢が必要ないのであれば、削除してください。
数式としては
D3 =DATEDIF(B3,TODAY(),"y")
E3 =IF(B3<=DATE(YEAR(B3),MONTH(4),DAY(1)),DATEDIF(B3,"2010/4/1","y")+1,DATEDIF(B3,"2010/4/1","y"))
F3 =IF(AND(D3>=25,D3<70),"○","×")
G3 =IF(OR(C3="男",D3<20,D3>50,MOD(E3,2)=1),"×","○")
として、D3~G3を範囲指定した後に、オートフィルで下へコピー
又はオートフィルマークの(+)でダブルクリック
これで希望に近い形ができないでしょうか?
以上、参考になれば幸いですが、
的外れなら読み流してくださいね。m(__)m
tom04さん
こんばんは!
丁寧な解説ありがとうございます!
すごく分かりやすくて助かりました!
本当にありがとうございます!
No.4
- 回答日時:
No.3です。
たびたびごめんなさい。
先ほどの回答でE3セルの数式が間違っていると思います。
E3 =IF(B3<=DATE(YEAR(B3),MONTH(4),DAY(1)),DATEDIF(B3,"2010/4/1","y")+1,DATEDIF(B3,"2010/4/1","y"))
が正解だとおもいます。
(要らない「1」をプラスしていました)
どうも何度も失礼しました。m(__)m
No.6
- 回答日時:
>また、年齢なのですが、その検診日が人によって違うので
>データを常に更新したいと考えています
>つまり、年齢はその検診日の年齢表記にしたいのです
>その場合はどうすればよいでしょうか?
回答で書いた「年齢」は「年度」で計算するのためのものです。
受診日の年齢を知りたいのならば、D列に「受診日」を追加し、
E2に
=DATEDIF(B2-1,D2,"Y")
で得ることができます。
(^。^)v
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あるあるbotに投稿したけど採用されなかったあるある募集
あるあるbotに投稿したけど採用されなかったあるあるをこちらに投稿してください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
エクセルで(~以上,~以下)の式を教えてください
Excel(エクセル)
-
数値の列から偶数のみを抽出する方法を教えてください
Excel(エクセル)
-
最新受診日から次の受診日を表示する関数(再度)
Excel(エクセル)
-
-
4
ある倍数だけを塗りつぶす方法 A列に数字があります。 その中から、7の倍数ならB列のセルを塗りつぶす
Excel(エクセル)
-
5
Excelの関数で、性別が男なら『0』を表示し、女ならセルを参照して、その特定のセルの数字を表示させ
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
35才未満の健康診断について
-
高校の内科検診
-
運動器検診って服脱ぎますか?
-
前立腺
-
会社の検診が信用できません。...
-
婦人科検診の胸の検診(乳がん...
-
【Excel】生年月日から受けられ...
-
コロナ流行ってる今子宮頸がん...
-
乳がん検診でマンモとエコーど...
-
舌の先端が赤く腫れて痛いです
-
乳がん検診は何歳まで必要と考...
-
乳がんの検査でCTやMRIを取った...
-
大腸ポリープ(内視鏡)切除後...
-
ポリフル、コロネルの市販薬は...
-
胃体部大弯透亮像により精密検...
-
健康診断結果で胃の部分にニッ...
-
肋膜癒着ってこれからどうすれ...
-
肺部X線で「炎症後変化疑い」...
-
ソープについて 中出しができる...
-
大腸ポリープ切除後の禁酒期間
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
35才未満の健康診断について
-
【Excel】生年月日から受けられ...
-
公務員の妻の健康診断
-
問診時にブラジャーは、はずさ...
-
おりものがたくさん出ます、、...
-
神戸市で乳がん検診(マンモグ...
-
今度女子高生の内科検診(学校...
-
夫の会社から主婦検診のお知らせ
-
インプラントの検診について。 ...
-
マンモグラフィーは二年に一回...
-
朝起きるとおっぱいが痛いです...
-
自治体の検診に精神科領域(認...
-
有名人の癌 ステージ4公表が相...
-
高校の内科検診
-
ブラジャーの肩紐をお腹まで下...
-
子宮ガン検診の費用について
-
人間ドックで、膵臓がんの検診...
-
前立腺
-
下腹部の膨らみ
-
82歳の夫ですが、先日、町の検...
おすすめ情報