[英]I Keep getting a #value error in Excel VBA
So I wrote a quick function in VBA for Excel, but every time I call it, it gives me a #value
error. 因此,我在VBA for Excel中编写了一个快速函数,但是每次调用它时,都会出现
#value
错误。 I don't know what I am doing wrong. 我不知道我在做什么错。 Can anyone help?
有人可以帮忙吗?
Function h(UA, k, A, Af_At, Delta, l)
h1 = 0
m = (2 * h1 / k / Delta) ^ 0.5
ml = m * l
Nf = WorksheetFunction.Tanh(ml)
No = 1 - Af_At * (1 - Nf / ml)
UA1 = h1 * A * No / 2
While UA > UA1
UA_old = UA1
h_old = h1
h1 = h1 + 0.5
m = (2 * h1 / k / Delta) ^ 0.5
ml = m * l
Nf = WorksheetFunction.Tanh(ml)
No = 1 - Af_At * (1 - Nf / ml)
UA1 = h1 * A * No / 2
Wend
h = h_old + (UA - UA_old) * (h1 - h_old) / (UA1 - UA_old)
End Function
I call it using: =h(10,1,1,1,1,1)
in the insert function bar. 我用插入功能栏中的
=h(10,1,1,1,1,1)
来称呼它。
Division by zero at 被零除
No = 1 - Af_At * (1 - Nf / ml)
m1 is zero because h1 is zero. m1为零,因为h1为零。
You should change: 您应该更改:
h1 = 0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.