Excel VBA将2乘以60

时间:2015-08-04 19:01:26

标签: excel vba excel-vba

你有没有注意到在Excel Vba代码中划分2/60的问题?我正在使用Excel 2013.请测试以下代码:

Sub test1()
Dim A As Integer
Dim B As Integer
MsgBox 2 / 60
A = 2
B = 60
MsgBox A / B
End Sub

Sub test2()
Cells(1, "a") = 2
Cells(1, "b") = 60
Cells(1, "c") = Cells(1, "a") / Cells(1, "b")
MsgBox Cells(1, "a") / Cells(1, "b")
End Sub

Test1将为数学运算生成错误的答案。结果应为0,0333333,但它带来3,3333333E-02。 Test2适用于细胞,它带来了正确的结果。 我的代码出了什么问题?这是一个错误吗?我很感兴趣,为什么vba不能做正确的计算?

感谢您的帮助

1 个答案:

答案 0 :(得分:4)

在数字部分E+XXE-XX中,XX表示小数点向右或向左移位的位数。

所以在你的3.333333E-02移位小数点2左边的位置,你得到0.03333333

这种表示法的一个要点是免除零(0.0000012345 = 1.2345E-06)并正确显示数字精度范围内的数字(hypthetical 1234567890123456789 = 1.2345678E + 18(其余数字)被剪辑了#。()。

并且5E + 00 = 5 :)没有转变。

更多信息:E notation