我创建了一个名为RoundPlus的Public函数,并将其添加到模块中。 现在,当我尝试从单元格调用函数时,我得到#VALUE错误,我无法弄清楚原因。
所需的行为是检查值是零还是小于500然后如果不是,请使用结果总和转到ROUNDPLUS函数并根据ROUNDPLUS FUNCTION中的情况适当地舍入它并将该值返回到公式< / p>
= IF(SUM(F202:F205)= 0,0,IF(SUM(F202:F205)LT; 500500,ROUNDPLUS(SUM(F202:F205), - 2)))
这是函数.. Roundplus应该进行舍入并将结果值放回公式中,然后公式将该位置放在单元格中。
Public Function RoundPlus(dblValue As Double) As Double
Dim n As Integer
On Error
GoTo Err_Procedure
Select Case dblValue
Case Is < 10001: n = 100
Case Is < 25001: n = 250 Case Is < 50001: n = 500
Case Is < 100001: n = 1000 Case Is < 250001: n = 2500
Case Else: n = 5000
End Select
RoundPlus = Round(dblValue / n) * n
Else RoundPlus = dblValue
End If
Exit_Procedure:
Exit Function
Err_Procedure: errorHandler Err.Number, Err.Description, "calcBasePrem()", Erl
Resume
Exit_Procedure
Resume
End Function