如何在[vba]自定义函数中添加if子句

问题描述 投票:0回答:1

我写了这个功能

Function potential(Volume, Original, Better)
potential = (Original - Better) * Volume
End Function

它非常基本,但是我真正需要的是当Better为空白时,答案应该为0

我尝试过potential = Application.WorksheetFunction.If(Better = 0, 0, (Original - Better) * Volume)结果总是错误

potential = ((Original - Better) * Volume) * (Better / Better)仅在“更好”为空白时给出了错误

所以我尝试了potential = Application.WorksheetFunction.IfError(((Original - Better) * Volume) * (Better / Better), 0),结果相同

我在这里做错了什么?

excel vba
1个回答
2
投票
用途:

Function potential(ByVal Volume As Double, ByVal Original As Double, Optional ByVal Better As Double = 0) As Double If Better = 0 Then Exit Function potential = (Original - Better) * Volume End Function

© www.soinside.com 2019 - 2024. All rights reserved.