#DIV/0错误值
该错误值一般是由公式的运算产生,假设提问的数据是通过原公式产生:
原公式:
=A1/B1
现修改为:
=IF(COUNT(A1/B1),A1/B1,"")
或:
=IF(ISNUMBER(A1/B1),A1/B1,"")
再或:
=IF(ISERR(A1/B1),"",A1/B1)
如果用的是EXCEL 2003以上的版本,公式精简些:
=IFERROR(A1/B1,"")
正数表示现金流入,负数表示流出,第一个周期流入这么多,然后流出,是不是有些问题?
典型的IRR函数报错(#NUM!和#DIV/0等),在保证公式绝对正确的前提下,这个错误是由于IRR函数本身缺陷造成的。IRR的结果是没办法用方程算出来的,只能是用电脑“找”出来。大概的方法是,先估算一个值,再用这个利率和现金流计算npv,然后不断修改这个估算值,使得npv不断接近于零。但IRR公式迭代次数是有限的,现金流越复杂,IRR函数就越难直接得出结果。
说重点,这个解决方法还是有的。关键在于IRR函数还有一个隐含参数:Guess。
语法:=IRR(values, [guess])
[]代表此参数可省略。Guess函数代表用户对IRR结果的一个预估值。当IRR函数算不出结果时,你可以尝试输入不同的Guess,帮助函数找一个更适用的初始估算值,与实际结果越接近的Guess就越容易得出结果。只要多试几个Guess,很快就能算出结果的。
例如:我看题目里的项目,估计IRR是正的,大概不超过50%,那我就按顺序试:
=IRR(数据域, 0.3)
=IRR(数据域, 0.5)
=IRR(数据域, 0)
=IRR(数据域, -0.5)
.......
直到试出结果为止。guess都是我自己随便填的,一个数不行就换另一个数。
以上。
参考1:我的知乎回答里有详细的IRR使用教程:
网页链接
参考2:微软IRR函数使用手册
网页链接