浅谈Excel中的函数排序

1.什么是排名?

排名和排序不一样(虽然排名可以通过排序获得)。排名是指以某种方式确定一组数据的排名,比如对结果进行排名,结果是第1和第2...

而排名和排序的概念,很多人分不清楚,容易导致不在一个频道上,所以希望大家先搞清楚两者的区别。

2.如何排名?

普通排名

1.1排序排名

这个很好理解。如果想得到一组数据的排名,可以先对数据进行排序,然后标注序号。

说说Excel中的函数排名

这种排名是一种比较低级的方法,有两个问题是它无法克服的:

①如果数据中存在重复,则无法识别重复。

②如果数据更新,则无法动态排名。

因此,有一个先进的游戏-排名使用排名功能。

1.2按等级函数排序

Rank函数是一个排名函数,最常用的函数是找到某个值在某个区域的排名。

rank函数的语法形式:rank(number,ref,

我们把最后的排名效果定格一下,发现有两个第五名,没有第六名。

说说Excel中的函数排名

这是因为在排名数据中,有两个重复的数据。在Rank的世界里,重复的排名也会占据一个位置,所以没有第六名,直接转到第七名,这就是常见的或者排名。

中国排名

如下图,这是中国式排名:并列第五,然后会出现第六。

说说Excel中的函数排名

这种情况下不能用rank函数实现,需要用COUNTIF和SUMPRODUCT函数嵌套。

在单元格C2中输入函数,= sum product((B2 < = b $2: b $9)/countif(b $ 2:b $ 9,b $ 2:b $ 9)),然后用力向下复制行数。

这是一大堆功能。我肯定不能理解这到底是什么!

功能分析:

= SUMPRODUCT((B2 & lt;=B$2:B$9)/COUNTIF(B$2:B$9,B$2:B$9))

这个公式是两个常用函数的嵌套。

1.函数的关键部分是COUNTIF(B$2:B$9,B$2:B$9)

COUNTIF函数的语法规则如下:

countif(范围,标准)

参数:range要计算非空单元格数目的区域。

参数:criteria:定义为数字、表达式或文本的条件。

说白了就是条件计数。在区域范围内查找符合条件的单元格数目。

大家常见的情况比较简单,大致是这样的:

在上面的示例中,在D2单元格中编写公式=COUNTIF(B2:B9,B2)。

也就是说,B2有多少个细胞等于B2细胞的值:B9?

显然,在这个区域中,等于88的单元格就是B2本身,所以结果是1。

如果Criteria参数是数组区域,将返回数组结果。

也就是COUNTIF(B$2:B$9,B$2:B$9)的意思,(这里是重点)

就是求元素个数=B$2或者B$3或者b $4...或者B$9在第一个参数B$2:B$9区的条件下8个单元格分别在第二个参数B$2:B$9区...

返回一个数组,结果为:{1,1,1,1,2,1,1,2}

即区域中每个元素的重复次数。

请把这句话读三遍↑

2.解释1/COUNTIF(B$2:B$9,B$2:B$9)

函数得到的数组结果除以1作为分母会怎么样?

例如:当COUNTIF (B $2: B $9,B $2: B $9) = {1,1,1,1,2,1,1,2}时,

1/COUNTIF(C$3:C$9,C$3:C$9)是= {1,1,1,0.5,1,1,0.5}

这一步是小学数学水平,应该不难。

3.SUMPRODUCT函数

这个函数被称为计算万能之王。在有限的篇幅里,我只能说说核心的知识。

直奔结论,记住结论就行了,后面还有机会详细讲解。

SUMPRODUCT函数的通用公式是:

=SUMPRODUCT((条件1)*(条件2)*……*求和面积)

可以实现单条件求和,也可以实现多条件求和。

所以在这种情况下,SUMPRODUCT函数的括号内的块最终的作用就是按照一定的条件求和。

①先说求和。

将1/COUNTIF(C$3:C$9,C$3:C$9)得到的结果{1,1,1,0.5,1,1,0.5}相加,你会惊讶地发现:

sum =[区域中非重复元素的数量!】

其实原理很简单:比如案例中89重复两次,那么在得到的数组中,两个89的位置都是0.5,两个0.5之和等于1,相当于只计算一次。

有了这个推广,如果某个数据重复了n次,那么它对应的COUNTIF()结果=n,它的1/COUNTIF()结果=1/n,因为有n个元素(因为重复了n次),所以它们的个数之和=n*(1/n)=1。

…………

所以,= SUMPRODUCT ((1/COUNTIF (B$2:B$9,B$2:B$9))啰嗦了这么久,其实就是为了计算B $2: B $9区域中不重复元素的个数。

这一步相当于中学数学知识,对大家来说应该没问题。

②附加条件之和。

我们需要对大于等于这个数的数进行计数,因为我们要从最大到最小进行排序。

想一想,为什么?

(例如,对于排名第一的数字,大于或等于它的只有它本身,排名第二的数字,大于或等于它的只有第一和它本身...所以,如果你想求一个数在一组数中的排名,你可以计算出这个组中大于等于这个数的数。)

所以要增加一个附加条件:(B2 < =B$2:B$9),根据和积函数的普适公式,这个条件需要乘以求和区域。

因此,最终的合成公式为:

= SUMPRODUCT((B2 & lt;=B$2:B$9)/COUNTIF(B$2:B$9,B$2:B$9))

公式的最终含义是:以满足(B2 < =B$2:B$9)为条件,统计区域内不重复元素的个数,最终得到【中国式排名】的结果。