【发布时间】:2013-01-24 10:57:07
【问题描述】:
我收到了针对存款计算的 Excel 2010 VBA 函数实现的编译错误。 我想返回一个数组,其中包含给定存款的利率及其值。
Function exe3djxInterestSelect(deposite)
Dim V() As Variant
ReDim V(1, 2)
Select Case deposite
Case Is < 0
exe3djxInterestSelect = CVErr(xlErrNum)
Case 0 To 1000
V(1) = 0.055
V(2) = deposite * 0.055
exe3djxInterestSelect = V
Case 1000 To 10000
V(1) = 0.063
V(2) = deposite * 0.063
exe3djxInterestSelect = V
Case 10000 To 100000
V(1) = 0.073
V(2) = deposite * 0.073
exe3djxInterestSelect = V
Case Else
V(1) = 0.078
V(2) = deposite * 0.078
exe3djxInterestSelect = V
End Select
结束函数
它返回#VALUE! .
它有什么问题?
谢谢
【问题讨论】:
-
如果您从 Sub 而不是工作表中调用 UDF,调试 UDF 会更容易。
-
我从工作表中调用它。我需要定义一个新函数来调用这个函数吗?谢谢!
-
只需在同一个模块中创建一个子:它只需要一行(例如)
Dim v:v=exe3djxInterestSelect(100)将光标放在子中按F5运行它。 -
要在没有额外子项的情况下调试工作表公式,请使用 F9 在代码中插入断点。在公式窗口中按 Enter 后,您将被定向到 VBE 窗口中的断点,您可以使用 F8/Ctrl-F8 单步执行代码。