怎样用公式求Excel中学生各科成绩总和排在前40%的那部分学生每科成绩的平均分(总和前40%的人数用进一法)

1、比如A列姓名,B列语文,C列数学,D列英语,E列总计(怎样选出E列总分数排在前40%的学生,然后再求出这部分学生语文平均分,数学平均分,英语平均分——用一个公式)
2、我用了一个公式:=SUMPRODUCT(LARGE(B3:B145,ROW(INDIRECT("1:"&ROUNDUP(COUNT(B3:B145)*0.4,)))))/ROUNDUP(COUNT(B3:B145)*0.4,)
只能直接求出各科成绩(比如语文)排在前40%的平均分,不能以总分的前40%为依据去求这部分学生各科的平均分(因为总分在前40%的学生和单科在前40%的学生一般是不一致的),请高手指点一下呀!解决问题再追加悬赏分

第1个回答  2012-03-27
如果你的公式能求出来语文成绩的平均值的话,那么你把公式修改一下 B 改成E 即可……求出前40%的 总平均成绩了……
你这里有一点是容易出现问题的地方 就是计算各科成绩的平均值用总成绩来约束 有可能出现偏差 总成绩有可能 有一样的,但是 你有可能在取样计算的时候 最后去了一部分这个重复的总成绩,但是但你计算各个单科成绩的时候 就有可能 不够准确了 ……这个问题怎么考虑哪?
比如 你有25名学生,根据你的要求 你是计算前10的 而恰巧 你有12名同学的总成绩 都是一样的 并且是最高总成绩,但是他们的各科成绩却不是 一样的 你取样只有10 那么你在12里面怎样取 前10个人 来计算 各单科的成绩?……不知道我表达的是否清楚……所以 似乎通过总成绩约束来求单科 似乎有些问题……
第2个回答  2012-03-27
总分前40%的语文平均分:
=SUMPRODUCT(--RIGHT(LARGE($E3:$E145*10^8+B3:B145,ROW(INDIRECT("1:"&ROUNDUP(COUNT(B3:B145)*0.4,)))),5))/ROUNDUP(COUNT(B3:B145)*0.4,)
向右拉填充即可求出“数学”和“英语”的平均分。本回答被提问者采纳
第3个回答  2012-03-27
可以做下透视表
也可以等你输入所有学生的成绩以后以E列倒序排列再区前40行做B.C.D列的平均分
第4个回答  2012-03-27
=AVERAGE(IF(E3:E145>=PERCENTILE(E3:E145,40%),B3:B1450))
以上为数组公式,输入后先不要回车,按Ctrl+Shift+Enter结束计算。追问

我把你的公式和我手动(把总和从大到小排序后选取前40%学生的语文成绩)求出的平均分不一样,你的偏大了(你的76.34我的78.88),是哪里有问题吗?公式里的PERCENTILE是什么意思呀?

追答

你确信你的手动是对的?我的QQ1809097030,QQ吧

第5个回答  2012-03-27
把你的公式中的B3:B145全部改为E3:E145
相似回答