[[20030611101202]] 『指定年齢範囲ごとの人数を表示したい!』(レア) >>BOT

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『指定年齢範囲ごとの人数を表示したい!』(レア)

ある一覧表に生年月日と6月1日時点での年齢(DATEIF(生年月日,”2003/06/01,”y”))が入っています。その年齢を使って44歳以下、45歳〜54歳、55歳〜59歳、60歳〜64歳、65歳以上の人数をそれぞれc窒スいのですが、表の並べ替えは出来ません。表自体には30人程度しかのっていないのですが、何か簡単にIFやCOUNTなどを使って式を組む事はできないでしょうか?


少し長くなりますがよろしいでしょうか?
 DATEDIFで抽出した年齢のデータがD1:D5にあるとします。
 =IF(D2>45,IF(D2>55,IF(D2>60,IF(D2>65,IF(D2>65,5),4),3),2),1)
 と、目立たないセル(下記ではF2:F7)に入力して
 44歳以下を1、45歳〜54歳を2、55歳〜59歳を3、
 60歳〜64歳を4、65歳以上を5、と分けます。
 出力したいセルの隣に44歳以下、45歳〜54歳、55歳〜59歳、60歳〜64歳、65歳以上と見出しを付け、
 44歳以下という見出しの隣に、=COUNTIF($F$2:$F$7,1)
 45歳〜54歳の隣に、=COUNTIF($F$2:$F$7,2)
 55〜59の隣に、=COUNTIF($F$2:$F$7,3)
 60歳〜64歳の隣に、=COUNTIF($F$2:$F$7,4)
 65歳以上の隣に、=COUNTIF($F$2:$F$7,5)

 もっといい方法があると思いますが、
 時間がなく、いい方法がすぐに思いつかずにこのように面倒になってしまったことをお詫びします。
 (トモ)

 なるほど、こう言うやり方も有るんですね。参考になります!
私が考えたのは単純ですがこんなんです。
 〜44  COUNTIF(範囲、”<45")
45〜54  COUNTIF(範囲、”<55")−COUNTIF(範囲、”<45")
55〜59  COUNTIF(範囲、”<60")−COUNTIF(範囲、”<55")
60〜64  COUNTIF(範囲、”<65")−COUNTIF(範囲、”<60")
65〜   COUNTIF(範囲、”>64")
如何でしょうか?
他にも色々とやり方は有るかと思いますが、研究して見ます!
 (ヒロ)

 度数分布を求める方法にFREQUENCY関数があります。
D2:D500に年齢データがあり、〜44、〜54、〜59、〜64、65〜の区間配列で求めます。
G1:G4に44、54、59、64と入力し、H1:H5を選択して、=FREQUENCY(D2:D500,G1:G5)と入力します。
FREQUENCY関数は配列数式ですので、ShiftキーとCtrlキーを押しながらEnterキーで確定します。
Enterで確定してしまった場合は再度H1:H5を選択して、F2で編集状態にしてから、
ShiftキーとCtrlキーを押しながらEnterキーで確定します。
配列数式は中括弧{}で囲まれた式 {=FREQUENCY(D2:D500,G1:G5)} になります。
 F    G    H
 〜44  44  {=FREQUENCY(D2:D500,G1:G5)}
45〜54  54  {=FREQUENCY(D2:D500,G1:G5)}
55〜59  59  {=FREQUENCY(D2:D500,G1:G5)}
60〜64  64  {=FREQUENCY(D2:D500,G1:G5)}
65〜      {=FREQUENCY(D2:D500,G1:G5)}
G列の配列区分は重複しますので、列非表示にすれば、見やすくなります。
※G5が空白になっているのは、65以上の数値を求めるためです。64より大きい値はこのセルに表示します。
 (シニア)    


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.