如果信息来自“真”和“假”,如何在 Excel 中得到“是”或“否”?

如果信息来自“真”和“假”,如何在 Excel 中得到“是”或“否”?

首先,我必须指出,我是一名访问此论坛的德国人(我在德国网站上找不到任何有用的东西),所以如果我的英语不好,请原谅我 ;-)

这是我的“问题”:

我有一个包含各种公式的庞大电子表格。在 R 和 SI 列中有一个公式,可以给出“真”或“假”的结果。

现在,我需要一个额外的公式,如果满足以下条件,它将给出“是”或“否”的答案:

  • R 列和 S 列 = “true” --> “yes”
  • R 列和 S 列 = “false” --> “no”
  • R 列与 S 列不等 --> “否”

我确信这有一个公式。有人能帮我吗?:-/

答案1

这听起来像是一个简单的AND条件。

=IF(AND(R1,S1),"Yes","No")

答案2

如果您指的是TRUE/FALSE而不是"TRUE"/ "FALSE"(前者是布尔值,后者是字符串),我个人更喜欢前者,并且会尽可能将任何输出保留为布尔格式。将它们保留为布尔值很有用,因为它使基于它们编写公式(并返回它们)变得容易得多。我将在下面给出几种变体的解决方案。使用适合您的任何方法。解决方案适用于第 2 行。

情况 1:R 和 S 列中的值是布尔值,并且您想要布尔输出。

这是最简单的解决办法。

=AND(R2,S2)

情况 2:R 和 S 列中的值是布尔值,并且您想要字符串输出。

仅有的轻微地更复杂。

=IF(AND(R2,S2),"Yes","No")

情况 3:R 和 S 列中的值是字符串,并且您想要布尔输出。

这开始显示出布尔输出而不是字符串的优势。

=AND(R2="TRUE",R2=S2)

情况 4:R 和 S 列中的值是字符串,并且您想要布尔输出。

最后,这是最不可取的(IMHO)情况和解决方案。

=IF(AND(R2="TRUE",R2=S2),"Yes","No")

如果一个是布尔值而另一个不是,情况会变得更糟,但是您现在可能已经明白了。


下面是上述所有操作的屏幕截图。A 列和 B 列代表 R 和 S,其中的值是布尔格式。F 列和 G 列代表 R 和 S,其中的值是字符串。C 列显示上述案例 1 中的解决方案的示例输出,D 列显示案例 2,H 列显示案例 3,I 列显示案例 4。

在此处输入图片描述


最后,这里有一组公式可以涵盖所有真/假输入变体。

布尔输出。

=AND(UPPER(TEXT(R2,""))="TRUE",UPPER(TEXT(R2,""))=UPPER(TEXT(S2,"")))

字符串输出。

=IF(AND(UPPER(TEXT(R2,""))="TRUE",UPPER(TEXT(R2,""))=UPPER(TEXT(S2,""))),"Yes","No")

这应该可以解释以下所有情况:

  • R 和 S 都是布尔值
  • R 和 S 都是字符串
  • 一列是布尔值,另一列是字符串
  • 列之间大小写不匹配(例如:R 列显示“TRUE”,而 S 列显示“true”)

相关内容