我有一个变量,Diff作为double。 (值是我的工作簿中的示例)
Dim Diff As Double
Sheets(Sheet1).Activate
Diff = 4382.98-4117.34-265.64
计算Diff的值来自格式化为数字的单元格。 然后我在一个if语句中使用Diff作为参数。
If Diff <> 0 Then
ActiveSheet.Range(A2).Value = 265.64 + Diff
End If
Diff应该等于0,但if语句正在进行,就好像条件为真。我有类似的if语句没有这样的问题。我需要以不同方式格式化我的值吗?
编辑:有43892.98而不是4382.98 Edit2:有256.64而不是265.64
答案 0 :(得分:0)
我存储了Diff As Currency而不是Double,问题已清除。
答案 1 :(得分:0)
从来没有, NE-VER比较公平的双倍!(浮点型的变量)
甚至只是在脑海中 - 永远不要......
你做对了 - 你的比较是&#34;&lt;&gt;&#34; - 你得到了正确的结果。
货币为INTEGER类型,即非浮点变量