或在条件格式公式中刹车条件给出意想不到的结果
OR in conditional formatting formula brakes condition giving unexpected outcome
我在条件格式公式中使用了 OR,结果非常意外。
举个简单的sheet:
现在使用公式添加条件格式:
=B4:G7=$A
它按预期工作,包含 "A"
的单元格具有真实值
现在试试另一个公式:
=OR(B4:G7=$A;FALSE)
意思应该基本一样。嗯..结果是非常不同的:
更令人困惑的是,例如,将单元格 I7 更改为 "a" 会影响结果:
这是我使用的精确公式,"LUB" 为 "OR","FAŁSZ" 为 "FALSE":
编辑:
我忘了忍受这个问题。问题是:为什么会发生?我如何在这种情况下正确使用 OR?
首先,您需要了解绝对和相对引用在条件格式中的工作原理。公式引用引用 applies to
范围内最左上角的单元格。如果公式有相对引用,那么对于每个 applies to
单元格,公式引用中的单元格会相应地移动,如果是绝对引用 - 那么引用不会改变。在您的例子中,公式 =B4:G7=$A
应用于单元格 B4
、单元格 C4
- =C4:H7=$A
、单元格 B5
- =B5:G8=$A
,公式 =OR(B4:G7=$A;FALSE)
.
也会发生同样的事情
其次,公式 =B4:G7=$A
和 =OR(B4:G7=$A;FALSE)
的工作方式完全不同。第一种情况实际上是将范围的第一个单元格与 $A
进行比较,即在前面的示例中 =B4=$A
、=C4=$A
、B5=$A
。在第二种情况下,范围被划分为单元格,将它们与 $A
进行比较并将结果传递给 OR
函数,即 =OR(B4:G7=$A;FALSE)
=> =OR(B4=$A;C4=$A;D4=$A ... G7=$A;FALSE)
并且如果即使一个是 TRUE
,那么你也会得到结果 TRUE
.
因此,我们可以得出结论,在这种情况下,以下公式将适用于您:
=OR(B4=$A;FALSE)
我在条件格式公式中使用了 OR,结果非常意外。
举个简单的sheet:
现在使用公式添加条件格式:
=B4:G7=$A
它按预期工作,包含 "A"
的单元格具有真实值现在试试另一个公式:
=OR(B4:G7=$A;FALSE)
意思应该基本一样。嗯..结果是非常不同的:
更令人困惑的是,例如,将单元格 I7 更改为 "a" 会影响结果:
这是我使用的精确公式,"LUB" 为 "OR","FAŁSZ" 为 "FALSE":
编辑: 我忘了忍受这个问题。问题是:为什么会发生?我如何在这种情况下正确使用 OR?
首先,您需要了解绝对和相对引用在条件格式中的工作原理。公式引用引用 applies to
范围内最左上角的单元格。如果公式有相对引用,那么对于每个 applies to
单元格,公式引用中的单元格会相应地移动,如果是绝对引用 - 那么引用不会改变。在您的例子中,公式 =B4:G7=$A
应用于单元格 B4
、单元格 C4
- =C4:H7=$A
、单元格 B5
- =B5:G8=$A
,公式 =OR(B4:G7=$A;FALSE)
.
其次,公式 =B4:G7=$A
和 =OR(B4:G7=$A;FALSE)
的工作方式完全不同。第一种情况实际上是将范围的第一个单元格与 $A
进行比较,即在前面的示例中 =B4=$A
、=C4=$A
、B5=$A
。在第二种情况下,范围被划分为单元格,将它们与 $A
进行比较并将结果传递给 OR
函数,即 =OR(B4:G7=$A;FALSE)
=> =OR(B4=$A;C4=$A;D4=$A ... G7=$A;FALSE)
并且如果即使一个是 TRUE
,那么你也会得到结果 TRUE
.
因此,我们可以得出结论,在这种情况下,以下公式将适用于您:
=OR(B4=$A;FALSE)