[[20121109113530]] 『上位下位にランクを付けたい』(pk) ページの最後に飛ぶ

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

 

『上位下位にランクを付けたい』(pk)
 Excel2007
 Windows Vista
 いつもお世話になっておりますm(__)m
 下記のような表で等級が同じ人の中(B列)で 得点(C列)の上位20%には「A」を、下位20%には「C」を
 それ以外(中間の60%の人)には「B」を付けたいです。

 A	B	C	D
 氏名	等級	得点	ランク
 嶋田○○	C3	76.7 	
 ○○弘章	C3	71.3 	
 田上○○	C3	66.7 	
 上谷○○	C3	54.2 	
 ○○洋史	C3	49.3 	
 ○○浩幸	C3	43.3 	
 岡田○○	C3	39.3 	
 赤松○○	C2	70.0 	
 小野○○	C2	67.3 	
 上田○○	C2	65.9 	
 八木○○	C2	60.7 	
 竹森○○	C2	55.7 	
 松井○○	C2	53.1 	
 冨土○○	C2	49.9 	

 PERCENTILEを使用してみましたが出来ませんでした(><)
 どのような関数になりますでしょうか?
 宜しくお願い致しますm(__)m

 一気に全データ範囲を選択するのでしょうか?

  =LOOKUP(C2,PERCENTILE(IF(B$2:B$18=B2,C$2:C$18),{0,0.2,0.8}),{"C","B","A"})

 配列数式(Ctrl+Shift キーを押しながら、Enterで入力確定)

 (半平太) 2012/11/09 15:52

(半平太)様

出来ました!ありがとうございました(><)

{0,0.2,0.8}

ここが、20%、60%、20%という指令になっているのでしょうか?

お手すきの時で結構ですので今後のために教えて頂けると
幸いですm(__)m

(pk)


 {0,0.2,0.8}),{"C","B","A"})

  0%以上20%未満は、全て 0%と同類に扱い、1番目のCを引っ張って来る
 20%以上80%未満は、全て20%と同類に扱い、2番目のBを引っ張って来る
 80%以上    は、全て80%と同類に扱い、3番目のAを引っ張って来る

 Lookup()とはそういう使い方が出来る関数です。

 (半平太) 2012/11/09 17:17

(半平太様)

お礼が大変遅くなりすみませんm(__)m

ご丁寧に教えて頂きありがとうございました^^
HLookupやVLookupは使ったことありますがLookup初めて使いました。

勉強になりました。
ありがとうございました
またよろしくお願いします♪

(pk)


 上位20% → 80%以上 100%以下
 下位20% → 0% 以上 20% 以下

 なら 中間は 20%より大きい 〜 80%未満

 になるんじゃないの?

 =IF(PERCENTILE(OFFSET(C$1,MATCH(B2,B:B,)-1,,COUNTIF(B:B,B2)),0.2)>=C2,"C",IF(PERCENTILE(OFFSET(C$1,MATCH(B2,B:B,)-1,,COUNTIF(B:B,B2)),0.8)<=C2,"A","B"))

 ※例表の等級が一塊なんでOFFSET対応。

 (GobGob)

コメント返信:

[ 一覧(最新更新順) ]


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