我在excel中有一个列表,我希望它能选择更高的3个结果,而且只有3.在这个例子中使用条件格式似乎很容易:
1 | 2 | 3 | 4 | 5 | 6
44 | 78 | 98 | 45 | 52 | 98
第2,第3和第6个数字将突出显示。
问题出现如下:
1 | 2 | 3 | 4 | 5 | 6
44 | 78 | 78 | 45 | 87 | 98
Excel将突出显示第2,第3,第5和第6个数字,因为前两个(排序列表中的第三个)是相等的。 如何让Excel只选择其中一个?
(解决方案不需要使用条件格式,可以使用Excel上可用的任何工具,从公式到VB,但简单易用)。
答案 0 :(得分:1)
对于条件格式,我们需要打破平局。一种方法是计算值在先前的比较中出现的次数。
这会将您的条件公式更改为
=(RANK(A2,$A$2:$F$2)+COUNTIF($A$2:A$2,A2)-1)<=3
请注意,在某些情况下使用绝对位置,在其他情况下使用相对位置。
击穿:
RANK(A2,$A$2:$F$2)
- 等级公式。你知道这个,因为你现在正在使用它
COUNTIF($A$2:A$2,A2)
- 计算值出现的次数 - 请注意引号在冒号后面A
前面没有$ - 这是为了确保在我们处理时范围变大沿行的公式(第一计数:A2:A2,第二计数:A2:B2等)
-1
- 因为计数总是匹配一个数字(本身)
所以,对于你的第二个例子,
44 78 78 45 87 98
新职级
6 3 4 5 2 1
并且公式转换为
= RANK(A2,$ A $ 2:$ F $ 2)+ COUNTIF($ A $ 2:A $ 2,A2)-1
= RANK(B2,$ A $ 2:$ F $ 2)+ COUNTIF($ A $ 2:B $ 2,B2)-1
= RANK(C2,$ A $ 2:$ F $ 2)+ COUNTIF($ A $ 2:C $ 2,C2)-1
= RANK(D2,$ A $ 2:$ F $ 2)+ COUNTIF($ A $ 2:d $ 2,D2)-1
= RANK(E2,$ A $ 2:$ F $ 2)+ COUNTIF($ A $ 2:E $ 2 E2)-1
= RANK(F2,$ A $ 2:$ F $ 2)+ COUNTIF($ A $ 2:F $ 2,F2)-1
用于条件格式
答案 1 :(得分:0)
我想不出一个单元格解决方案,但这是我的帮助列:
Rank_Row
列,检查Input
是否重复,如果是,则添加行号的分数。 C2=IF(COUNTIF($B$2:$B$7,B2)>1,RANK(B2,$B$2:$B$7)+ROW()/100,RANK(B2,$B$2:$B$7))
Filter
列按升序使用简单RANK
,您可以使用此列过滤前3列。D2=RANK(C2,$C$2:$C$7,1)
向下拖动两个公式以进行复制。