EXCEL中 如何将一列数中先出现的3个最大值标红?(条件格式)

一个网友提供了如下思路假设数据在A列,选择A列-->格式-->条件格式公式=a1-row(a1)/10^8>large(a$1:a$1000-row($1:$1000)/... 一个网友提供了如下思路

假设数据在A列,选择A列-->格式-->条件格式
公式=a1-row(a1)/10^8>large(a$1:a$1000-row($1:$1000)/10^8,4)
格式按钮-->图案-->红色

实测确实可用, 但是这个思路确实没看懂 请各位网友帮我分析一下这个是什么意思
展开
 我来答
凌文元LWY
高粉答主

2016-01-24 · 每个回答都超有意思的
知道大有可为答主
回答量:3.6万
采纳率:76%
帮助的人:1.3亿
展开全部

1、如果在A列给3个最大值添加条件格式时,通常使用的条件公式为=A1>=LARGE(A:A,3)

2、当遇到A列最大值的重复值较多时,所有最大值都会以填充色显示,而达不到将同样是最大值时,先出现的以条件格式差异化突出显示的效果;

3、实现最先出现的3个最大值以条件格式显示,就需要利用先后顺序的行号作为辅助条件,将其乘以10^-8,然后与A列值相减,得到与A列几乎没有大小差别却又有着细微差异的新数据,便于通过新数组比较同样数据出现的先后。也即相当于辅助了如下图的辅助列;

4、在辅助列中,可以非常方便地将同样大小但先出现的数区别标识。为了一次成形,直接在条件格式的公式中,输入=(A1-ROW()*10^-8)>=LARGE(A$1:A$1000-ROW($1:$1000)*10^-8,3)

百度网友ca64c0c
2013-01-18 · TA获得超过4664个赞
知道大有可为答主
回答量:2991
采纳率:61%
帮助的人:1448万
展开全部
其实应该是原来回答的高手【无知ooo】亲自解释更好啊,^_^

关键在于你的条件是【先出现的3个最大值】
对于无重复的情况,处理起来是非常简单的
但遇到最大值、次大值有重复的情况,就麻烦得多
无论是用MAX还是用LARGE,都无法直接判断出【先出现的3个】值
例如:5、6、5、4、6、7
如果用 >LARGE(..., 4)作为条件,则会得到5个数,即5、6、5、6、7
然后需要更复杂的条件才能将6、6、7筛选出来

而【无知ooo】的公式非常巧妙地解决了这个问题
公式的大于号后面部分不直接对原始数据进行判断
而是将原始数据减去一个很小的值
这个很小的值也不是固定的,而是随着行号的增大而增大
为方便讲解,将公式中的很小的数适当放大,公式原来是行号除以1亿,这里改成除以100
仍然以5、6、5、4、6、7为例
通过公式,上面的各个数变为:
5 → 5-1/100=4.99
6 → 6-2/100=5.98 第2大值
5 → 5-3/100=4.97
4 → 4-4/100=3.96
6 → 6-5/100=5.95 第3大值
7 → 7-6/100=6.94 最大值
这样,原来重复的第2大值【6】变成了不重复的第2大值和第3大值,而且先出现的【6】,由于排序靠前,行号小,减去的值也小,结果就比后面第二次出现的【6】的结果大

总之,这个公式将原来可能重复的数据,转换成为不重复的、且总的大小趋势与原数据一致,而原先重复的数值变成由大到小排序
接下来就顺理成章,判断大于这个不重复数据系列中的第4大值,就是所要求的【先出现的3个最大值】

的确是非常巧妙,佩服佩服!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来自朱家尖积极进取的大平原狼
2013-01-18 · TA获得超过6268个赞
知道大有可为答主
回答量:6076
采纳率:71%
帮助的人:2477万
展开全部
公式不用这么复杂,这样就可以:
公式=A1>LARGE(A$1:A$000,4)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式