execl筛选去重_实用EXECL办公函数 【中国式排名】

上次分享了 RANK 排名函数,也提到了 RANK 函数其实是不符合中国人的排名习惯的。但是 Execl 中并没有直接可用于中国式排名的函数。例如:下图可以看到,因为出现 2 个第 1 名,因此没有第 2 名;以此类推没有第 5、7 名。

e08a52ba1596aaadb6ace081ac12a48a.png

RANK 函数的特征就是:相同数值在排名中具有相同的名次,且会占据名次的数字位置。 但中国人的排名习惯则是即使有并列的第 1 名,之后仍有第 2 名。也就是名次并列但不占名次,这就是所谓的【中国式排名】。如下图:

95d397568ac5edd2103d04a5d36e55f2.png

能够实现中国式排名的公式很多,但小编比较喜欢最简单好记的方式,这里就只分享我常用的公式吧。

我所用的公式就是:以 G6 单元格为例。=SUMPRODUCT(($D$4:$D$20>=$D6)/COUNTIF($D$4:$D$20,$D$4:$D$20))

接下来对公式做一个简单的解析:

SUMPRODUCT是多条件求和函数【多条件排名也会用到】

公式中的“($D$4:$D$20>=$D6)”是返回一个数组:

在 G6 返回的逻辑值则是:

{TRUE,TRUE,TRUE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE}

公式中的“/COUNTIF($D$4:$D$20,$D$4:$D$20)

可表述为“*1/COUNTIF($D$4:$D$20,$D$4:$D$20)

在 G6 返回的结果则是:

{0.5,0.5,1,0.5,0.5,0.5,0.5,1,1,1,1,1,1,1,1,1,1}

($D$4:$D$20>=$D6)/COUNTIF($D$4:$D$20,$D$4:$D$20)

这个公式计算出来的结果是 0.5,0.5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0。最后用 SUMPRODUCT函数对上述结果求和, G6 单元格就会得到结果 2。

当然还有种方式是利用辅助列和 VLOOKUP 函数来实现。

1、我们可以把 D  列订单量复制到表格中的空白列后去重【打开数据选项-删除重复值】

2、对去重后的数据列利用 RANK 函数进行排名。

3、最后利用 VLOOKUP 函数对 D 列的订单量进行精确查找,也可以完成中国式排名。

这种方式比较适合于对数组求和理解不够透彻的时候。

嘿嘿,文章结束,下次再分享多条件排名。

7ec22b34d5128f235acd35c8f4d3afdf.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值