Excel ベスト3の名前を表示
Excel2007 の環境で作業しています。
LARGE関数・INDEX関数・MATCH関数を駆使して成績表からベスト3の得点と名前を拾ってきて、「ベスト3表」を作っています。
表は、画像にて確認お願いします。
セルJ2には「=LARGE($C$3:$C$7,H3)」の式で、H3の順位の点数を表示しています。セルI3に「=INDEX($B$3:$B$7,MATCH(J3,$C$3:$C$7,0))」で、セルJ2で得た値から名前を拾ってくるようにしたんですが、画像の通り、同じ点数の場合は学生番号の若い人が表示されてしまいます。こうなることは予想できていたのですが、問題はこれを回避して、次の人の名前を表示できるようにしたいと思っています。
例えば、
1 Aさん 100点
2 Bさん 90点
3 Cさん 90点
4 Dさん 70点
5 Eさん 80点
の成績表があったときに、
1位 Aさん 100点
2位 Bくん 90点
3位 Cくん 90点
のように表示したい。
もしくは、Eさんも90点であるのであれば、
1位 Aさん 100点
2位 Bくん 90点
3位 Cくん 他1名 90点
のように、学生番号の若い人が優先的に表示され、同順位がベスト3位で表示しきれない場合は、「他○名」と3位の人の名前の後につけたいと思っています。(もしくは、3位の下に他1名と表示でもいいです)
我儘を言えば、順位も1・2・2のように2位タイとなれば幸いですが、一先ず、名前が正しく表示されるようにしたいと思っております。さらに詳しい方でお願いできるのであれば、順位も1・2・2のように変動できるようにお願いしたいです。
注文が多いですが、お願いします。