2010-08-24 95 views

回答

7

我强烈建议避免第二种方法,因为您使用的是字符串文字。如果你使用了单元格中的第二种方法,那么稍后需要引用第二个单元格的值,那么将无法使用TRUE或TRUE()来比较它。

据我所知,第一种或第三种方法确实没有太大区别。 TRUE()只是一个返回TRUE的Excel函数。

+0

这很有道理,谢谢!想知道是因为另一位程序员在Excel中互换使用了真正的“真实”,所以我会纠正这一点。顺便说一句,我读你的个人资料 - 我是VBA流亡的.NET程序员,所以我感到你的痛苦。 – LFurness 2010-08-24 17:13:23

+0

很高兴为您服务!不流放盛大? – LittleBobbyTables 2010-08-24 17:24:28

2

更好的仍然是简单的:

=A1=1 

这使TRUE或FALSE进入细胞内以较少的复杂性。

0

试试这个小实验。下面的公式复制到Excel中:

A  B   C   D 
1 TRUE =NOT(A1) =A1=TRUE =A1=FALSE 
2 FALSE =NOT(A2) =A2=TRUE =A2=FALSE 
3 'true =NOT(A3) =A3=TRUE =A3=FALSE 
4 'false =NOT(A4) =A4=TRUE =A4=FALSE 

我想你会在结果感到惊讶:好像他们是布尔值

A  B  C   D 
1 TRUE FALSE TRUE FALSE 
2 FALSE TRUE FALSE TRUE 
3 true FALSE FALSE FALSE 
4 false TRUE FALSE FALSE 

NOT()将字符串值'true'falseTRUEFALSE。但是,=将字符串和布尔值视为不同。为了保持一致性,您应该使用布尔文字,而不是字符串值(选项1),否则您的结果可能会意外不正确(有时选项2)。使用只返回文字值的公式没有多大意义(选项3)。

相关问题