gpt4 book ai didi

excel - 评估返回 -1 是否为 TRUE? (为什么不是1)

转载 作者:行者123 更新时间:2023-12-02 14:01:02 24 4
gpt4 key购买 nike

我正在帮助解决另一个问题,我意识到在 VBA 中使用 Evaluate 似乎会为 TRUE 语句返回 -1

数据:

Column A    Column B
A A
A B
C C

因此,如果我输入 =INT(A2=B2) 并向下拖动,我会得到我期望的 1, 0, 1

但是,使用以下 VBA,我得到 -1, 0, -1

For i = 2 To 4
Cells(i, 4).Value = Evaluate(Int(Cells(i, 1) = Cells(i, 2)))
Next i

为什么EVALUATE使用-1表示TRUE

最佳答案

VBA 使用 -1 作为 True 值。比照。使用 1 的 C 和 C++。

-1 在 2 的补码有符号整数类型中将所有位设置为 1,因此该选择具有一定意义。

这种选择可以追溯到 DOS BASIC(以及其他 BASIC,例如旧 BBC Micro 上的 BASIC),它早于 20 世纪 90 年代中期的组件对象模型,至今仍在使用。

关于excel - 评估返回 -1 是否为 TRUE? (为什么不是1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53989228/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com