返回一个Double,指定基于一系列定期现金流(付款和收款)和贴现率的投资的净现值。
语 法:
NPV(率,值())
NPV函数具有以下命名参数:
部分描述:
速度 必需的。Double指定整个期间的贴现率,以小数表示。
值() 必需的。指定现金流值的Double数组。该数组必须至少包含一个负值(付款)和一个正值(收据)。
评 论:
投资的净现值是未来一系列收支的现值。
NPV函数使用数组中值的顺序来解释付款和收款的顺序。请务必按正确的顺序输入您的付款和收据值。
NPV投资开始于第一个现金流值日期之前的一个时期,并以数组中的最后一个现金流值结束。
净现值计算基于未来现金流量。如果您的第一个现金流出现在第一个期间的开始,则第一个值必须添加到NPV返回的值中,并且不得包含在values ( )的现金流值中。
NPV函数类似于PV函数(现值),不同之处在于PV函数允许现金流在期末或期初开始。与可变NPV现金流值不同,PV现金流必须在整个投资过程中固定。
例 子:
此示例使用NPV函数返回数组 Values() 中包含的一系列现金流的净现值。RetRate 代表固定的内部收益率。
Dim Fmt, Guess, RetRate, NetPVal, Msg
Static Values(5) As Double ' 设置数组.
Fmt = "###,##0.00" ' 货币的定义格式.
Guess = .1 ' 10%开始.
RetRate = .0625 ' 设置固定内部汇率.
Values(0) = -70000 ' 创业成本.
' 反映连续四年收入的正现金流.
Values(1) = 22000 : Values(2) = 25000
Values(3) = 28000 : Values(4) = 31000
NetPVal = NPV(RetRate, Values()) ' 计算净现值
Msg = "这些现金流的净现值为"
Msg = Msg & Format(NetPVal, Fmt) & "."
MsgBox Msg ' 显示净现值.