我正在尝试做一个使用VBA完成XIRR计算的项目。部分代码如下所示。
Range("J3").Value = WorksheetFunction.IRR(IRRValues()) Range("J2").Value = Application.WorksheetFunction.Xirr(IRRValues(), RepayDates())
IRRValues()
是一个包含客户进行的每笔还款的数组,而RepayDates()
是一个包含每笔还款对应日期的数组。
IRRValues
以负数开头,作为第一次套现。但每次我运行VBA WorksheetFunction.XIRR
时,它都会给我一个有效的数字0。但是,如果我使用=XIRR
在工作表中运行相同的数据,那么它会给我另一个答案。而且WorksheetFunction.IRR
运行得很好。我已尝试将本地设置更改为"US“,以便日期格式正确(mm/dd/yyyy)。
数据如下所示,截至2012年6月19日,固定还款额为87.35美元。
-4000 07/07/2009
$87.35 07/21/2009
谢谢!
发布于 2017-02-08 10:07:14
问题解决了!我以为数组从索引1开始,但实际上它是从0开始的!
https://stackoverflow.com/questions/41972999
复制相似问题