• ベストアンサー

Excelで相対評価したいとき

 仕事がらExcelをよく使うのですが,たとえばB列に上からつまりB1から順に以下のような数値が入っているとします。 90,96,84,78,90,100,66,60,92  このデータを踏まえC列に B列の数値上位5分の1(20%)は5,その次の5分の1(20%)は4… という風に出力したい場合はどのような関数を入れればよいのでしょうか?  わかりにくい質問かもしれませんがご教示いただければ幸いです。よろしくお願い致します。

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

  • ベストアンサー
  • ta123
  • ベストアンサー率51% (95/186)
回答No.2

非常に分かりにくくなりましたが、以下の式を確定する時にCtrl+Shift+Enterでお願いします。(配列数式) セルC1の場合 =ROUNDUP((MAX(RANK(B$1:B$10,B:B))-RANK(B1,B:B)+1)/MAX(RANK(B$1:B$10,B:B))*5,0) B$1:B$10とあるのは、データの範囲です。 B1とあるのは、セルB1の評価点を求めるケースです。 あとはコピー/ペーストでOKです。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

例データA1:F23です。一部データはなく、埋まりません。 計数 ランク 点数 % 順位 点数 5 16 2 0 1 5 3 18 1 20 5 4 4 17 1 40 9 3 2 19 1 60 13 2 16 5 4 80 17 1 20 1 5 100 21 18 3 5 6 15 2 11 10 3 12 9 3 19 2 5 14 7 4 17 4 5 7 14 2 8 13 2 9 12 3 10 11 3 15 6 4 13 8 4 1 20 1 20 A23の20は=COUNT($A$2:A21) B2は=RANK(A2,$A$2:$A$21)、B3:B21はその式を複写。 C2は=VLOOKUP(B2,$E$2:$F$7,2,TRUE)、C3:C21はその式を複写。VLOOKUP関数はTRUE型に」すること。段階的区分別表の表引きをやってます。 %の行D行は、上例では20%固定値刻みですが、標準偏差がらみ(偏差値など)になるときはここの累積値を変えてください。 E列はRank数の区切りです。F列は与える点数です。 上例はA列を連続数字にして不自然ですが、実際の数値でやってみてください。 ランク関数が同点では同じ数字になること、%数字が四捨五入の関係で1ぐらいあわないケースがありそう 、VLOOKUP関数の表の範囲の作り方が1ぐらい 間違っているかも知れませんので心配ですが、大筋の 考え、道具立ては上記でいかがでしょうか。 よく考えていただいて、私の回答のアラが見えるようになれば、解決のゴールは近いでしょう。

takayuki_kato
質問者

お礼

 お三方ありがとうございました。まとめてのお礼ですみません。RANK関数を使うことでうまいこと解決致しました。今後ともよろしくお願い致します。

  • Poer
  • ベストアンサー率45% (72/157)
回答No.1

列を2つ使ってよいのなら、 C1に =RANK(B1,B:B) D1に =IF(C1<=MAX(C:C)/5,5,IF(C1<=MAX(C:C)*2/5,4,IF(C1<=MAX(C:C)*3/5,3,IF(C1<=MAX(C:C)*4/5,2,1)))) と入力し、必要な行だけコピーすればできます。もちろん、同点の場合は同じ評価になります。

関連するQ&A