【问题标题】:conditional formatting checking for a match in two different columns条件格式检查两个不同列中的匹配项
【发布时间】:2021-05-25 23:54:10
【问题描述】:

我正在尝试制定一个条件格式规则: 如果 A1 匹配 B 行或 C 行中的日期并且大于 D1 我可以使用两个条件规则来做到这一点:

=AND(match(A1, $B:$B,0),A1>=$D$1)
=AND(match(A1, $C:$C,0),A1>=$D$1)

但是当我尝试在一个条件下检查两个匹配语句时它不起作用:

=AND(OR(match(A1, $B:$B,0),match(A1, $C:$C,0)),A1>=$D$1)

也没有

=AND(match(A1, $B:$C,0),A1>=$D$1)

我需要做很多事情,单独编写它们需要大约一百个 CF,所以想知道是否有人知道一种方法可以同时检查所有这些条件?

编辑:

我做了一个简单的例子: https://docs.google.com/spreadsheets/d/1UqIZuJQviIgk4mjtBj8yH0_FFJavCrhcRdMB4kV8h04/edit?usp=sharing 在本例中,只有当这些条件都为真时,A2 才会变为绿色:

=AND(match(A2, $B2:$B,0),A2>=$D$2,A2<$E$2)
A2 also appears in column B
A2 is after D2
A2 is before E2

我想要的是一个检查这些条件的条件语句,而不是仅仅查看日期是否与 B 列中的日期匹配,而是查看日期是否与 B 列或 C 列中的日期匹配。

【问题讨论】:

  • 你能提供一些示例数据吗? greater than 就日期而言,我假设您的意思是 after?
  • @iansedano 提供示例数据,感谢您的宝贵时间。

标签: if-statement google-sheets conditional-statements match conditional-formatting


【解决方案1】:

尝试:

=MATCH($A$2, {$B$2:$B; $C$2:$C}, 0)*($A$2>=$D$2)*($A$2<$E$2)

【讨论】:

  • @JoeW 你能分享一份你的工作表副本吗?
  • 复制共享(适用于 B 列中的匹配,但不适用于 C 列)
【解决方案2】:

如何结合简单的逻辑比较和多个MATCH实例

=AND(
    OR(
        IFERROR(MATCH(A2,$B2:$B,0), FALSE),
        IFERROR(MATCH(A2,$C2:$C,0), FALSE)
    ),
    A2>=$D$2,
    A2<$E$2
)

如果MATCH 没有找到任何东西,那么它会返回一个错误。因此,您需要将其包装在 IFERROR 或类似名称中。省略它适用于一个,但是当你将它们包装在一个 OR 中时,它看起来总是会返回 FALSE,因为它总是会返回一个错误。

参考

【讨论】:

    猜你喜欢
    • 2011-10-28
    • 1970-01-01
    • 2013-01-14
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 2022-11-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多