Financial.PV(Double, Double, Double, Double, DueDate) 方法

定义

返回一个值,它基于未来等额分期付款和固定利率指定年金的现值。

public static double PV (double Rate, double NPer, double Pmt, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod);
static member PV : double * double * double * double * Microsoft.VisualBasic.DueDate -> double
Public Function PV (Rate As Double, NPer As Double, Pmt As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod) As Double

参数

Rate
Double

必需。 每期的利率。 例如,如果您的汽车贷款的年利率 (APR) 为 10%,按月还款,则每期利率为 0.1/12(即 0.0083)。

NPer
Double

必需。 年金付款总期数。 例如,如果您的汽车贷款的期限为四年,按月还款,则这笔贷款共有 4 * 12(即 48)个支付周期。

Pmt
Double

必需。 每期应付金额。 付款金额通常包含本金和利息,该值在年金的有效期限内都不会改变。

FV
Double

可选。 完成最后一次付款后所希望的终值或现金余额。 例如,贷款的终值为 $0,这是因为终值是末期还款之后的价值。 但是,如果您想用 18 年的时间存储 $50,000 作为孩子的教育经费,则 $50,000 是终值。 如果省略,则假定为 0。

Due
DueDate

可选。 DueDate 类型的对象指定付款何时到期。 如果在付款期末付款,则此参数必须为 DueDate.EndOfPeriod;如果在付款期初付款,则此参数必须为 DueDate.BegOfPeriod。 如果省略,则假定 DueDate.EndOfPeriod

返回

Double

基于未来等额分期付款和固定利率的年金的现值。

示例

在此示例中,该 PV 函数返回现值 1,000,000 美元,该年年金将在未来 20 年内每年提供 50,000 美元。 提供的预期年率 (APR) 、付款总数 (TotPmts) 、每个付款 YrIncome 金额 () 、投资 FVal () 的未来总值,以及一个数字,指示每个付款是在付款期 PayType 的开头还是结束 () 。 请注意, YrIncome 这是一个负数,因为它表示每年从年金支付的现金。

Sub TestPV()
    ' Define money format.
    Dim Fmt As String = "###,##0.00"
    ' Annual percentage rate.
    Dim APR As Double = 0.0825
    ' Total number of payments.
    Dim TotPmts As Double = 20
    ' Yearly income.
    Dim YrIncome As Double = 50000
    ' Future value.
    Dim FVal As Double = 1000000
    ' Payment at beginning of month.
    Dim PayType As DueDate = DueDate.BegOfPeriod
    Dim PVal As Double = PV(APR, TotPmts, -YrIncome, FVal, PayType)
    MsgBox("The present value is " & Format(PVal, Fmt) & ".")
End Sub

注解

年金是一系列固定现金支付在一段时间内。 年金可以是贷款 (,如住房抵押贷款) 或投资 (,如每月储蓄计划) 。

Rate必须使用以相同单位表示的付款周期来计算参数NPer。 例如,如果使用 Rate 月份计算, NPer 还必须使用月份来计算。

对于所有参数,现金支付 (,如存款储蓄) 以负数表示:收到现金 ((如股息检查) )由正数表示。

适用于

另请参阅