次の方法で共有


Financial.Pmt(Double, Double, Double, Double, DueDate) メソッド

定義

定期的な定額の支払いおよび一定した利率に基づいて、投資に必要な定期支払い額を指定する値を返します。

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

パラメーター

Rate
Double

必須です。 投資期間を通じての一定の利率です。 たとえば、10% の年率 (APR) で自動車ローンを利用する際、毎月の支払いを指定した場合の月々の利率は 0.1/12 (0.0083) になります。

NPer
Double

必須です。 投資期間全体での支払い回数の合計です。 たとえば、4 年間、月々分割払い自動車ローンを利用した場合、合計で 4 × 12 (= 48) の返済期間があることになります。

PV
Double

必須です。 現在の投資額、つまり将来行われる一連の支払いを現時点で一括支払いした場合の合計金額です。 たとえば、自動車を購入するために資金を借り入れた場合、ローン金額は、毎月の返済の対象となる貸手にとっての現在価値を表します。

FV
Double

省略可能。 投資の将来価値、つまり最後の支払いを行った後に残る現金の収支です。 たとえば、ローンの将来価値は 0 です。最終支払い後の価値であるためです。 ただし、子供の教育費のため、18 年間かけて 50 万円を貯金する場合、この 50 万円は将来価値になります。 省略した場合は、0 と見なされます。

Due
DueDate

省略可能。 支払い期日を示すオブジェクト型 DueDate の値。 各期の期末に支払う場合は DueDate.EndOfPeriod を、各期の期首に支払う場合は DueDate.BegOfPeriod をそれぞれ引数に指定します。 省略した場合は、DueDate.EndOfPeriod と想定されます。

戻り値

定期的な定額の支払いおよび一定した利率に基づく、投資に必要な定期支払い額です。

例外

NPer = 0 です。

この例では、 関数を Pmt 使用して、一定期間のローンの月払いを返します。 期間あたりの利率 (APR / 12)、支払総数 (TotPmts)、ローンの現在価値または元金 ()、ローンの将来価値 (PValFVal)、支払い期間の開始時または終了時の支払期日を示す数値を指定します。(PayType).

Sub TestPMT()
    Dim PVal, APR, Payment, TotPmts As Double
    Dim PayType As DueDate
    Dim Response As MsgBoxResult

    ' Define money format.
    Dim Fmt As String = "###,###,##0.00"
    ' Usually 0 for a loan.
    Dim FVal As Double = 0
    PVal = CDbl(InputBox("How much do you want to borrow?"))
    APR = CDbl(InputBox("What is the annual percentage rate of your loan?"))
    If APR > 1 Then APR = APR / 100 ' Ensure proper form.
    TotPmts = CDbl(InputBox("How many monthly payments will you make?"))
    Response = MsgBox("Do you make payments at the end of month?", MsgBoxStyle.YesNo)
    If Response = MsgBoxResult.No Then
        PayType = DueDate.BegOfPeriod
    Else
        PayType = DueDate.EndOfPeriod
    End If
    Payment = Pmt(APR / 12, TotPmts, -PVal, FVal, PayType)

    MsgBox("Your payment will be " & Format(Payment, Fmt) & " per month.")
End Sub

注釈

年金とは、一定期間に行われた一連の固定現金支払いです。 年金は、ローン (住宅ローンなど) または投資 (毎月の節約プランなど) です。

引数と NPer 引数はRate、同じ単位で表される支払期間を使用して計算する必要があります。 たとえば、 が月を使用して計算される場合 Rate は、 NPer も月を使用して計算する必要があります。

すべての引数について、支払われた現金 (節約金への預金など) は負の数で表されます。受け取った現金 (配当チェックなど) は正の数値で表されます。

適用対象

こちらもご覧ください