Excel从指定数据中取出前10名的结果并求平均值

一、数据源为:

image.png

二、达到目标:在E2中汇总前2名平均分,以上只是代表部分数据,实际上有六年级、七年级、八年级、一班、二班等。

三、最终公式:

=AVERAGE(LARGE(IF($A$4:$A$1116=LEFT(E1,3),$D$4:$D$1116,0),ROW(INDIRECT("1:"&E2))))

四、分析说明:

1、下面是取出六年级为关键词的数据,不是六年级的定义为0

IF($A$4:$A$1116=LEFT(E1,3),$D$4:$D$1116,0)

2、下面是生成前2名的数组

ROW(INDIRECT("1:"&E2)))

3、下面是由大到小生成前2名数据,并求平均值

=AVERAGE(LARGE(IF($A$4:$A$1116=LEFT(E1,3),$D$4:$D$1116,0),ROW(INDIRECT("1:"&E2))))