对不起,如果这个问题很愚蠢,因为我是 VBA 新手。
问题一开始就出现了,因为 excel IRR 无法计算模拟中的变化列(仅计算初始值而不是以下循环中的值)。所以我选择了 VBA IRR 函数,但它的双数组要求似乎是另一个主要问题。
当我尝试将范围读入变量数组,并以某种方式将每个数组元素转换为双精度类型,然后在 VBA IRR 函数中使用它们时,代码仍然显示“类型不匹配”。我也尝试过数组,但同样的错误结果。
有没有办法让工作表 IRR 与更改单元格一起工作,或者将变体数组转换为使 VBA IRR 工作的双精度数?
这是代码:
Dim va As Variant
Dim va_d As Double
va = Worksheets(3).Range("AY16:AY136").Value
va_d = CDbl(va)
Worksheets(3).Range("H7").Value = IRR(va_d)