VBA 中的简单浮点运算抛出错误
Simple floating point arithmetic in VBA throwing error
我在 Excel VBA 模块中有以下代码:
Function f(a, b, c, d)
f = 1.95 * a * (b / c) ^ 0.06 * (d / c) ^ 0.06
End Function
Sub callf()
Debug.Print (f(-7, 10, 3.5, -6))
End Sub
当我 运行 sub callf
我得到一个错误:
Run time error '5': Invalid procedure call or argument
我不知道为什么会这样。我这里不是在做简单的浮点运算吗?有什么想法吗?
因为你是raising -1.7
to the power 0.06
. The result是复数
我在 Excel VBA 模块中有以下代码:
Function f(a, b, c, d)
f = 1.95 * a * (b / c) ^ 0.06 * (d / c) ^ 0.06
End Function
Sub callf()
Debug.Print (f(-7, 10, 3.5, -6))
End Sub
当我 运行 sub callf
我得到一个错误:
Run time error '5': Invalid procedure call or argument
我不知道为什么会这样。我这里不是在做简单的浮点运算吗?有什么想法吗?
因为你是raising -1.7
to the power 0.06
. The result是复数