多语言展示
当前在线:1624今日阅读:60今日分享:41

在整个年级的成绩表中各班级求各班的排名

似乎这个标题说得太复杂了些,不过,我们通过如下的表来具体说明,本例要讲哪个技术教程。
方法/步骤
1

本例讲的是一个比较复杂的Excel排名的问题。   先看下表。

2

看上图吧,列分别为班级、姓名、总分和班级排名。   首先,这种表格是年级上所安排的考试名单,不能排序,以防止相邻的座位不能有同班的同学。   现在,总分出来了,我们得按照班级的号码,求出各表的每个同学在本班的成绩排名,比如,1班的同学要和1班的进行比较后排名,不能和2、3班一起排名,即每个班级的只能和本班级的进行排名,不能和其它班级混着排名。   那么,如何才能保证各班的和各班的在排名的时候即要准确,同时还要使其它班的排名也一起排出来互不影响。   方法很简单,使用SUMPRODUCT函数就足够了。   一、先看结果   我们先看结果吧,选中D2单元格,然后输入如下图的公式:

3

即 =SUMPRODUCT((A$2:A$7=A2)*(C$2:C$7>C2))+1 按下回车键即可,然后使用填充功能结果就出来了。   就这么简单,各班和各班排名一下就出来了,相当准确方便。   二、公式分析   如果你想了解SUMPRODUCT函数的详细介绍,请参阅 http://www.dzwebs.net/3649.html    下面就针对本例子讲解函数公式。   SUMPRODUCT((A$2:A$7=A2)*(C$2:C$7>C2))公式,可看作:   SUMPRODUCT((条件一)*(条件二))   如上的含义就是SUMPRODUCT函数必须同时满足条件一和条件二所得的记录数,即个数。   SUMPRODUCT((A$2:A$7=A2)*(C$2:C$7>C2))理解为:   A$2:A$7=A2,A$2:A$7区域,必须等于A2这个值,即班级号;此为条件一;   C$2:C$7>C2,C$2:C$7区域,必须大于C2这个总分,此为条件二;   满足如上条件的个数。   说得简单点,A2是班级号,其值为1,那么A$2:A$7这个区域只要是等于1这个班级号,就满足条件一;   同时,还要满足C$2:C$7>C2,C2为总分,其值为500,此为条件二。   班级号为1,成绩大于500的,有几个呢?看上班,满足这两个条件的个数为1,所以,公式SUMPRODUCT((A$2:A$7=A2)*(C$2:C$7>C2))的结果为1。   最后,在公式SUMPRODUCT((A$2:A$7=A2)*(C$2:C$7>C2))的后面加上1,公式就变成如下公式:   =SUMPRODUCT((A$2:A$7=A2)*(C$2:C$7>C2))+1   这就是所需要的最终的公式。

推荐信息