excel如何排名并显示名次(3种方法快速搞定Excel名次排列)

excel如何排名并显示名次(3种方法快速搞定Excel名次排列)

  经理:“来,给下面的表格排个名字,给你10秒钟”

  我:“。。。。。”

  常规方法是对C列降序排列,然后从1开始填充序列

  但是该法会时灵时不灵!

  比如这张表有些员工业绩重复,名次应当一致,但结果显然不尽如人意

  那么该怎么办呢?

  在我的视频课程《Excel通关秘籍》中,介绍过RANK函数

  利用它我们就可以实现智能排名!!

  该函数的参数如下:

  RANK(排名的单元格,排名区域)

  对于上面那种情况,我们只需输入:=RANK(C2,$C$2:$C$16)

  就可以快速完成排名了(排名区域通常采用“绝对引用”)

  条条大路通罗马,能实现智能排名的不仅仅只有RANK函数

  下面再给大家介绍两种方法:

  COUNTIF(计数区域,计数条件)常被用来计算区域中满足条件的单元格个数

  例如我们只要输入:

  =COUNTIF(C2:C16,">100")

  该函数意义:可以计算出C2:C16,大于100的数据的个数为5个

  在这个排名的案例中,我们可以输入:

  =COUNTIF(C$2:C$16,">"&C2)+1

  翻译过来就是:在C2:C16区域中,大于C2的单元格有多少个,那么C2的名次就是该个数+1

  想不到吧,SUM函数居然还可以用来排序

  解题思路同上:一列里边,比你大的有n个,那你就是排在第n+1名

  具体的函数如下:

  =SUM(N($C$2:$C$16>C2))+1

  输入完函数后,我们只要按下【Ctrl+Shift+Enter】就搞定了

  接着我们来解析下这个函数:

  (长文分析预警)

  =SUM(N($C$2:$C$16>C2))+1

  【一】$C$2:$C$16>C2得到的是一组逻辑值:“TRUE或FALSE”

  前面加上“N”函数就可以将其转成1或0;

  【二】公式思路:如果$C$2:$C$16中有几个大于C2,再加1,就是它的排名。

  比如:C2是最大的,那么

  $C$2:$C$16>C2全是false

  N($C$2:$C$16>C2)全是0

  SUM(N($C$2:$C$16>C2))=0

  加一还是等于一,它排名还是第一;

  以此类推,例如C3,有7个比C3大的,就有7个TRUE

  通过N函数转换成7个1,最后排名+1,就是8。

  【三】N函数还可以用“--”(负负)来代替,

  它也可以将文本数字、逻辑值转换成数值。

  =SUM(--($C$2:$C$16>C2))+1

  我们来看下GIF操作演示:

  殊途同归,最简单的方法自然是RANK函数

  它的两个兄弟“RANK.AVG”和“RANK.EQ”也推荐给大家

  这两个函数用法与RANK相似,大家可自行尝试哦~

推荐阅读