组内子组的唯一排名值

我试图从我的数据中得到一个独特的排名值(例如{1, 2, 3, 4} ,SUMPRODUCT会产生ties{1, 1, 3, 4} 1,1,3,4 ties{1, 1, 3, 4} ,我试图将COUNTIFS添加到结束调整重复排名。

  subgroup col B col M rank LMN 01 1 XYZ 02 XYZ 02 ABC 03 ABC 01 XYZ 01 LMN 02 3 ABC 01 LMN 03 4 LMN 03 4 'should be 5 ABC 02 XYZ 02 LMN 01 1 'should be 2 

到目前为止,我已经想出了这个。

 =SUMPRODUCT(($B$2:$B$38705=B2)*(M2>$M$2:$M$38705))+countifs(B2:B38705=B2,M2:M38705=M2) 

我在这里做错了什么?

好消息是,你可以扔掉SUMPRODUCT函数 ,并用一对COUNTIFS函数replace它。 即使SUMPRODUCT单元格范围限于数据范围,COUNTIFS也可以使用完整的列引用而不会造成损害,并且比SUMPRODUCT更有效。

在N2中作为标准function,

 =COUNTIFS(B:B, B2,M:M, "<"&M2)+COUNTIFS(B$2:B2, B2, M$2:M2, M2) 

根据需要填写。

rank_unique_subgroups_sample_data

筛选结果

rank_unique_subgroups_group_过滤的结果 rank_unique_subgroups_group_B_过滤结果 rank_unique_subgroups_group_C过滤的结果