首页 > 解决方案 > 修改 Countif rank 公式,匹配结果只计算一次

问题描述

所以我有这个电子表格

在此处输入图像描述

我正在尝试根据样式和颜色从每个垃圾箱中挑选出最多的物品,我创建了一个 sumif 公式来计算并添加所有相同颜色的物品。我现在正在尝试根据样式颜色选择数量和月份为每个项目创建一个排名。

=(COUNTIFS(A:A,[@[bin-name]],I:I,[@Month],K:K,">"&[@[Style Color Pick QTY]])+1)

问题是它会对每条线进行排名,所以我希望 PS-1 Scarlet 的排名不是 7,而是排名 2。

我尝试为此添加额外的条件,例如检查先前结果的额外 sumif,或将它们放入 IF 语句中以与其他结果进行比较,但我所有的尝试都导致所有 Ranks 为 1 或不变。

因此,我希望修改此公式或能够在另一张表中编写 =unique() 公式并针对该公式运行 Rank Countif 公式,我可以编写此公式,但不确定如何嵌入 # 来制作公式动态的(即,我没有将公式拖到 1000 行)。

任何帮助,将不胜感激。

标签: excel

解决方案


我找到了一个不雅的解决方案来解决您的问题。不过,这种方法也许可以重构为更优雅的解决方案。

小例子

ColumnRank是您已经拥有的列。

ColumnUniques是一个辅助列,=IFERROR(INDEX([Rank]; MATCH(0; INDEX(COUNTIF($B$1:B1;[Rank]); 0; 0); 0)); "")在其第一个单元格中包含公式B2

获取Proper_Rank现在就像=RANK([@Rank];[Uniques];1).

这两个辅助列当然可以隐藏或放置在您想要的任何位置RankUniques正如我所说,可能可以将这些帮助列组合到一个计算中,但我不知道如何。


推荐阅读