Financial.PPmt(Double, Double, Double, Double, Double, DueDate) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne une valeur spécifiant le paiement du principal pour une période donnée d’annuité en fonction des paiements fixes périodiques et d’un taux d’intérêt fixe.
public static double PPmt(double Rate, double Per, double NPer, double PV, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod);
static member PPmt : double * double * double * double * double * Microsoft.VisualBasic.DueDate -> double
Public Function PPmt (Rate As Double, Per As Double, NPer As Double, PV As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod) As Double
Paramètres
- Rate
- Double
Obligatoire. Taux d’intérêt par période. Par exemple, si vous obtenez un prêt automobile à un taux de pourcentage annuel (APR) de 10 % et que vous effectuez des paiements mensuels, le taux par période est de 0,1/12, soit 0,0083.
- Per
- Double
Obligatoire. Période de paiement comprise entre 1 et NPer.
- NPer
- Double
Obligatoire. Nombre total de périodes de paiement dans l’annuité. Par exemple, si vous effectuez des paiements mensuels sur un prêt automobile de quatre ans, votre prêt a un total de 4 x 12 (ou 48) périodes de paiement.
- PV
- Double
Obligatoire. Valeur actuelle d’une série de paiements ou de reçus futurs. Par exemple, lorsque vous empruntez de l’argent pour acheter une voiture, le montant du prêt est la valeur actuelle pour le prêteur des paiements mensuels de voiture que vous allez faire.
- FV
- Double
Optional. Valeur future ou solde de trésorerie souhaité après avoir effectué le paiement final. Par exemple, la valeur future d’un prêt est \$0, car c’est sa valeur après le paiement final. Toutefois, si vous souhaitez économiser 50 000 $ sur 18 ans pour l’éducation de votre enfant, \50 000 $ est la valeur future. En cas d’omission, 0 est supposé.
- Due
- DueDate
Optional. Objet de type DueDate qui spécifie quand les paiements sont dûs. Cet argument doit être soit DueDate.EndOfPeriod si les paiements sont dûs à la fin de la période de paiement, soit DueDate.BegOfPeriod si les paiements sont dus au début de la période. En cas d’omission, DueDate.EndOfPeriod est supposé.
Retours
Paiement du principal pour une période donnée d’annuité en fonction des paiements fixes périodiques et d’un taux d’intérêt fixe.
Exceptions
Per
<=0 ou Per>NPer.
Exemples
Cet exemple utilise la PPmt fonction pour calculer le montant d’un paiement pour une période spécifique étant le principal lorsque tous les paiements sont de valeur égale. Sont donnés le taux d’intérêt en pourcentage par période (APR / 12), la période de paiement pour laquelle la partie principale est souhaitée (Period), le nombre total de paiements (TotPmts), la valeur actuelle ou le principal du prêt (PVal), la valeur future du prêt (FVal) et un nombre qui indique si le paiement est dû au début ou à la fin de la période de paiement (PayType).
Sub TestPPMT()
Dim PVal, APR, TotPmts, Payment, Period, P, I As Double
Dim PayType As DueDate
Dim Msg As String
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?"))
' Ensure proper form.
If APR > 1 Then APR = APR / 100
TotPmts = CDbl(InputBox("How many monthly payments do you have to 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 = Math.Abs(-Pmt(APR / 12, TotPmts, PVal, FVal, PayType))
Msg = "Your monthly payment is " & Format(Payment, Fmt) & ". "
Msg = Msg & "Would you like a breakdown of your principal and "
Msg = Msg & "interest per period?"
' See if chart is desired.
Response = MsgBox(Msg, MsgBoxStyle.YesNo)
If Response <> MsgBoxResult.No Then
If TotPmts > 12 Then MsgBox("Only first year will be shown.")
Msg = "Month Payment Principal Interest" & Environment.NewLine
For Period = 1 To TotPmts
' Show only first 12.
If Period > 12 Then Exit For
P = PPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType)
' Round principal.
P = (Int((P + 0.005) * 100) / 100)
I = Payment - P
' Round interest.
I = (Int((I + 0.005) * 100) / 100)
Msg = Msg & Period & vbTab & Format(Payment, Fmt)
Msg = Msg & vbTab & Format(P, Fmt) & vbTab & Format(I, Fmt) & Environment.NewLine
Next Period
' Display amortization table.
MsgBox(Msg)
End If
End Sub
Remarques
Une annuité est une série de paiements en espèces fixes effectués sur une période donnée. Une annuité peut être un prêt (par exemple, une hypothèque d’habitation) ou un investissement (par exemple, un plan d’épargne mensuel).
Les Rate arguments et NPer les arguments doivent être calculés à l’aide de périodes de paiement exprimées dans les mêmes unités. Par exemple, si Rate elle est calculée à l’aide de mois, NPer doit également être calculée à l’aide de mois.
Pour tous les arguments, les paiements en espèces (tels que les dépôts à l’épargne) sont représentés par des nombres négatifs ; les espèces reçues (telles que les chèques de dividende) sont représentées par des nombres positifs.