Excel上如何自动计算每个班级前30名的平均分

Excel上如何自动计算每个班级前30名的平均分
一个年级十几个班都在一起,按总分排列好,要算出每个班级前30名每一科(如政治,语文,英语等等)的平均分。有帮助的会追加分数,大家帮一下哈。。

第一步:排序,由于没有实例以下图为例,先按总分排序:点击总分-数据-z-a,即可从高到低,也可选择a-z,从低到高排序。

第二步:用average函数求平均值,语法是=average(1-30名数据区域)

回车后得数是81.1那么前30名的平均数就是81.1,如果从低到高排序的选择后面30项即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-03-23
=AVERAGE(IF(RANK(B$2:B$59,B$2:B$59)<31,B$2:B$59,""))
数组公式结束
以上是按各班已排序在一起的情况下求一个班的平均分,根据各班在行中的范围修改公式,你如果再要自动在A列找出各个班级后求前30名的平均分的话,我也不会了,等待高手吧!
第2个回答  2009-03-23
我理解你想要的,是在总成绩表里面三条件(同一班;同一科;前30名)下的求平均分。

假设数据如下
A行 班级 政治 总分。。。
B行 01班 99 260 ...
C行 03班 96 259...

1 求同一班同一科第30名的分数 X (有可能几个同学都是这个分数),large函数
2 总表中求同一班大于X分数的总分,再除以其个数(不一定是30),就是你要求的,sumproduct函数等

具体做法,你发成绩表给我,我来做 QQ574310
第3个回答  推荐于2017-12-16
把分数按高到底排序(会吧,数据-排序)
然后在空白单元格输入=average(a2:a31)
我假设数据在a2到a31里本回答被提问者采纳
第4个回答  2009-03-23
假设分数在A1:A100,输入公式:
=SUMPRODUCT(LARGE(A1:A100,ROW(1:30)))/30
即可