[算表] Excel根据各自班级各自排名

楼主: x70026 (虾咪)   2018-02-23 19:31:05
之前上网有查到一个
公式=SUMPRODUCT((班级=A2)*(成绩>=C2))-SUMPRODUCT((班级=A2)*(成绩=C2))+1
会排出【班排名(错误)】,希望能排出【班排名(正确)】,如何利用原公式改,
或是有其他公式??
PS.各自班级各自排名,但同分并列名次,且名次不跳过。谢谢
PS1.因班级众多,且每班人数都不一致,希望公式能简易一些。
班级 座号 成绩 班排名(错误) 班排名(正确)
A 01 10 4 3
A 02 10 4 3
A 03 20 3 2
A 04 50 1 1
A 05 50 1 1
B 11 10 5 3
B 12 50 3 2
B 13 50 3 2
B 14 60 1 1
B 15 60 1 1
作者: soyoso (我是耀宗)   2018-02-23 19:41:00
楼主: x70026 (虾咪)   2018-02-23 20:42:00
谢谢,目前是可以了,但人数约1200人的话,感觉电脑跑起来快当掉了。
作者: Iories (无法克制)   2018-02-24 09:20:00
数量大又需要快速运算就要用宏(VBA)了
作者: soyoso (我是耀宗)   2018-02-24 09:50:00
https://i.imgur.com/YOnklzs.jpg 类似这样,班级排序,范围以动态连结内为测试2097笔资料,每次重新运算时会花费不到2秒时间;班级设为46班,每班为40~50位情况下。如每次的重新运算还是会觉得操作上不顺的话,可将排名以选择性贴上值的方式保留或以 https://i.imgur.com/bm9maaQ.jpg 班级排序归类,成绩以大到小;同样回文笔数,可无感觉运算时间如要改回以班级,座号排序时,请先将排名选择性贴上值
楼主: x70026 (虾咪)   2018-02-24 10:57:00
S大您好,若是有成绩是空白,跑出来是会错误,以09:50那个程式来说,应该要在如何修改?谢谢
作者: soyoso (我是耀宗)   2018-02-24 11:16:00
https://i.imgur.com/pMwXS86.jpg 类似这样,另外回文的部分,提供的是"公式",并不是"程式"如空白储存格不显示排名的话,可加上if判断回传空字串""补充,班级排序归类,成绩以大到小方面,如班级最高分为上个班级最低分,这情况如可能发生的话,则调整为https://i.imgur.com/44PJTig.jpg
作者: azteckcc ( )   2018-02-24 13:53:00
如果是2010版,枢纽分析某功能也可以参考https://imgur.com/a/f8vDr2个空白处是我把该生成绩移除,枢纽分析结果会跳过由大到小 作出来是你要的 不跳过名次,如果还有其他需求,这个方法大概就不合用了
楼主: x70026 (虾咪)   2018-02-24 15:11:00
S大感谢喔,目前我的需求都可以做到了,谢谢!另A大也谢谢

Links booklink

Contact Us: admin [ a t ] ucptt.com