- ベストアンサー
年代別のデータをカウントしたいです。
エクセルで名簿を作成しているのですが、どうしても10代の人は何人、20台の人は何人いるのかデータを取り出すことができません。 年齢| このデータでしたら10代の人は2人 10 | 20代の人は2人、30代の人は1人 25 | 50代の人は1人 34 | と、別のセルに分けて表示させたい 17 | のですが、VBAを使ったらできる 52 | のですが、関数だけを使って作成し 26 | たく思っております。 COUNTIF関数などでは決められた数値しか数を数えることしかできません。IFを使っても10代から90代までの年代を算出したいのでネストに引っかかってしまいます。ほかにうまくやる方法があるのでしょうか?もしかしたらとっても簡単にできてしまうことなのでしょうか。もしよろしかったらわかる方教えてください。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
COUNTIFとINTを使えばOKでしょう。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
データ例 A1:A12 11 12 32 34 53 23 14 42 34 56 65 11 A14からA19まで世代ということで 10 20 30 40 50 60 といれ B14に =SUM(IF((A$1:A$12>=(10*(ROW()-13)))*(A$1:A$12<(10*(ROW()-12))),1,0) と入れてSHIFT+CTRL+ENTER(3つのキーを同時押し)(配列数式) 結果はA14:B19に 10 4 20 1 30 3 40 1 50 2 60 1 >もしかしたらとっても簡単にできてしまうことなのでしょうか 配列数式はとっつきにくいですがこういう風に簡単な式で、色々のことができます。真ん中の(・・・)*(・・・)の*はAND条件を表してます。
お礼
配列でやることもできるのですね。{}で囲む配列数式の設定なんてものがあったのですね。まだまだ関数は奥が深いです。とっても勉強になりました。ありがとうございます。
- bono223
- ベストアンサー率31% (71/224)
関数の FREQUENCYを使えばできますよ。ヘルプを見れば、詳しいことはわかると思いますが、わからない場合は、追加で質問をして下さい。 なお、最近似たような質問があって、詳しく説明されていますので、そちらも参考になると思います。
お礼
FREQUENCY関数・・・本には載っていない関数がまだたくさんあるんですね。一度勉強して数式を試してみます。ありがとうございました。
お礼
切り捨ててCOUNTIFで計算するのが一番簡単なやり方かもしれませんね。どうもありがとうございました。