【问题标题】:Excel formula to search if all cells in a range read "True", if not, then show "False"Excel公式用于搜索范围内的所有单元格是否为“True”,如果不是,则显示“False”
【发布时间】:2014-04-07 18:34:59
【问题描述】:

使用excel公式搜索范围内的所有单元格是否为“True”,如果不是,则显示“False”

例如:

A      B     C     D
True  True  True   True
True  True  FALSE  True

我想要一个公式来读取这个范围并显示在第 2 行中,这是一个“假”,并且由于第 1 行中没有假,我希望它显示“真”。

谁能帮我解决这个问题?

【问题讨论】:

  • 只是=AND(A1:D1)
  • 这应该是答案。
  • 那行不通。我希望它将 A-D 列视为范围,如果存在任何错误,则说“False”。我将其用作检查并且有很多列,因此最好不要检查每一列是否存在错误,我可以在一列中查看并识别确实显示“错误”的行。

标签: excel if-statement excel-formula contains


【解决方案1】:

如果将结果存储为 TRUE / FALSE 值,您可以将结果组合在一起:

=AND(A1:D2)

或者,如果存储为文本,请使用数组公式 - 输入以下内容,然后按 Ctrl+Shift+Enter 而不是 Enter。

=AND(EXACT(A1:D2,"TRUE"))

【讨论】:

  • 我的数据肯定是“本机”的 TRUE/FALSE 布尔值;所以直接的 AND(..) 对我有用!
【解决方案2】:

看起来你的值是文本,而不是数字 True/False,那么你可以使用 COUNTIFSUMPRODUCT

=IF(SUMPRODUCT(--(A2:D2="False")),"False","True")
=IF(COUNTIF(A3:D3,"False*"),"False","True")

【讨论】:

  • COUNTIF 公式有效!太感谢了!我正在编写完全相同的公式,但我没有在 false 之后包含 *。如果你碰巧读到了这篇文章,你介意分享一下为什么需要这个符号吗?再次感谢!!
  • @user3384215,如果没有 *,Excel 会将 "False" 转换为逻辑值,而不是将其保留为文本。 * 将其强制转换为字符串,这将允许它匹配单元格中的文本。请注意,* 也意味着它将匹配 False、FalseStuff 以及以这 5 个字母开头的任何其他内容
【解决方案3】:
=IF(COUNTIF(A1:D1,FALSE)>0,FALSE,TRUE)

(或者您可以指定要查看的任何其他范围)

【讨论】:

  • 我试过了,但是没有用。我查看了我知道包含错误的行之一作为检查,并且您建议的公式返回正确。
  • 我认为可能是因为单元格包含文本。这就是为什么我一直对让它发挥作用感到困惑。
  • 你可以简单地说=COUNTIF(A1:D1, FALSE)=0
【解决方案4】:
=COUNTIFS(1:1,FALSE)=0

这将返回 TRUE 或 FALSE(寻找 FALSE,如果 count 不为 0(全部为真)则为假

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    • 1970-01-01
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多