【发布时间】:2020-03-12 06:44:11
【问题描述】:
真*真*真=-1
当我乘以等于 true 的奇数个布尔变量时,结果为 -1。这是为什么呢?
这不是: 真*真*真
和这个一样:
1 * 1 * 1?
为什么 vba 返回 -1,而 Excel 在评估时返回 1?
我一直在用这样的方式写代码
如果 Asb(TRUE * TRUE * TRUE) =1 则...
或者这个
如果 TRUE * TRUE * TRUE 0 则 ...
我想了解为什么代码会这样。提前感谢您的解释。
【问题讨论】:
-
在 VBA 中,True 的字面意思是 -1,而 False 的字面意思是 0。
-
例如,在 VB 编辑器的即时窗口中,试试这些:真 -1 还有 ?假-1
-
只是为了好奇:为什么要乘一个布尔值?