前几天,一篇中的公式“=SUMPRODUCT(($C$2:$C$14=C2)*($D$2:$D$14>=D2))”出现了bug——如果在某组中出现并列第一的情况,结果显示为并列“第二” 。
如下图:
文章插图
今天再给一个更严密的公式 。
公式实现
【SUMPRODUCT分组排名公式】在E2单元格输入公式:
=SUMPRODUCT(($C$2:$C$14=C2)*($D$2:$D$14>=D2)/COUNTIFS($C$2:$C$14,$C$2:$C$14,$D$2:$D$14,$D$2:$D$14))
确定,然后公式向下填充,即可得组内排名 。
如下图:
文章插图
公式解析
$C$2:$C$14=C2:
在C2:C14区域的 每一个单元格与C2相比较,如果相等返回TRUE,否则返回FALSE 。本部分返回数组:
{TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE}(数组一)
$D$2:$D$14>=D2:
在D2:D14区域的 每一个单元格与D2相比较,如果大于或等于D2返回TRUE,否则返回FALSE 。本部分返回数组:
{TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE ;FALSE }(数组二)
COUNTIFS($C$2:$C$14,$C$2:$C$14,$D$2:$D$14,$D$2:$D$14):
查找C列D列从第2行到第14行每一行出现的次数 。本部分得数组:
{2;1;1;2;1;1;1;1;1;1;1;1;1}(数组三)
=SUMPRODUCT(($C$2:$C$14=C2)*($D$2:$D$14>=D2)/COUNTIFS($C$2:$C$14,$C$2:$C$14,$D$2:$D$14,$D$2:$D$14)):
数组一*数组二/数组三,得到的数组{0.5;0;0;0.5;0;0;0;0;0;0;0;0;0},数组内数据加和,即得第一位的排名 。
此公式修正了并列第一却出现并列“第二”的bug 。如下图:
文章插图
推荐阅读
- 多关键字 怎么用公式实现根据多个条件排名次
- SUMPRODUCT、LOOKUP、OFFSET、VLOOKUP多条件查询
- 淘宝怎么补关键词靠前?日常运营如何提升排名?
- 搜索排名的影响因素有哪些?附注意事项
- 虾皮在修改标题时应注意哪些事项?关键词排名规则
- 亚马逊关键词排名怎么看?关键词排名原则
- 亚马逊标题的终极SEO方式有哪些?如何提升排名?
- 亚马逊有竞价排名吗?如何竞价?
- 天猫怎么优化类目排名?如何增加类目?
- SUMPRODUCT函数注意事项