在 Excel 中仅突出显示行/列中所有最小值/最大值中的第一个

在 Excel 中仅突出显示行/列中所有最小值/最大值中的第一个

我正在尝试THE TITLE,这将是一个普遍的问题;在我的特定情况下,我需要矩阵每一行中的最小值,当然使用条件格式。

我只能强调全部每行中的最小值。例如:

在图片中你可以看到矩阵G5:I28受此规则影响:

=G5=MIN($G5:$I28)

应用于

=$G$5:$I$28

使用条件格式对话框。

问题仍然存在,例如在图片的第四行中,试图实现只有第二个单元格的背景被突出显示(第一个1在行中);每一行都是如此。

到目前为止,我尝试过匹配地址大的小的分钟最大限度等,但无济于事。

请帮忙

答案1

假设您的数据列是 A:C,并且您的第一个数据行是第 1 行,则您可以使用一条规则:

=COLUMN()=MATCH(MIN($A1:$C1),$A1:$C1,0)

这将找到行中的最小值,然后找到行中与该值匹配的第一个单元格。如果单元格的列号相同,它将应用该格式。

您可以为第一行创建条件格式,然后复制并粘贴特殊格式到其余范围。

在此处输入图片描述

不同工作表位置的范围翻译

MATCH 会生成相对于其自身范围定义的结果(范围中的第一个单元格 = 位置 1,无论其在工作表上的位置如何)。如果实际列是 G:I,则工作表范围中的第一列是第 7 列,因此公式需要移动 6 列。您可以将匹配结果加上 6,也可以从列号中减去 6 以进行比较。您可以使用以下任一方法:

=COLUMN()=MATCH(MIN($G1:$I1),$G1:$I1,0)+6 

或者

=COLUMN()-6=MATCH(MIN($G1:$I1),$G1:$I1,0) 

行号不是一个因素,因此对于第 5 行,公式中的行引用将是5而不是。1

在评论中,您询问如何使其更通用,这样如果您插入一列,它仍然正确。这为任何公式增加了另一个维度;您基本上需要用公式替换硬编码的调整。

6您可以使用当前第一列数减去 ,而不是固定调整1。如果您插入或删除列,范围引用将自动调整。因此,您可以使用:

=COLUMN()=MATCH(MIN($G1:$I1),$G1:$I1,0)+COLUMN($G1)-1 

答案2

此答案基于fixer1234 的回答这解释了解决我的问题的主要思想。这里我包含了对我有用的解决方案,以使格式移动每次在矩阵的左边插入一列。

fixer1234 的解决方案:=COLUMN()=MATCH(MIN($A1:$C1),$A1:$C1,0)

A1将和更改C1为所需的行范围(不是很重要)并添加+COLUMN($G$3)-1到公式(非常重要)以添加相关性,结果为:

=COLUMN()=MATCH(MIN($G3:$I3),$G3:$I3,0)+COLUMN($G$3)-1

注意:$G$3是我的矩阵中的第一个单元格。

希望能帮助到你。

相关内容