Returnerer et dobbelt reelt tal, der angiver hovedstolen for en annuitet baseret på periodiske, faste ydelser og en fast rentesats.
Syntaks
PPmt(rente, per,nper,nv [, fv ] [, type ] )
Syntaksen for funktionen PPmt har disse argumenter:
| Argument | Beskrivelse |
|---|---|
| Sats | Påkrævet. Dobbelt angiver renten pr. periode. Hvis du f.eks. tager et billån med en årlig rente på 10 procent og betaler månedlige ydelser, er renten pr. periode 0,1/12 eller 0,0083. |
| pr. | Påkrævet. Heltal, der angiver betalingsperioden mellem 1 og nper. |
| nper | Påkrævet. Heltal , der angiver det samlede antal ydelsesperioder i annuiteten. Hvis du f.eks. betaler månedlige ydelser på et fireårigt billån, har dit lån i alt 4 * 12 (eller 48) ydelsesperioder. |
| nv | Påkrævet. Dobbelt angivelse af den nuværende værdi eller den aktuelle værdi af en række fremtidige udgående eller indgående betalinger. Når du for eksempel låner penge til at købe en bil, er lånebeløbet nutidsværdien for långiveren af de månedlige bilbetalinger, du vil foretage. |
| FV | Valgfrit. Variant angiver en fremtidig værdi eller kassebeholdning, du ønsker, efter at du har foretaget den sidste betaling. Hvis f.eks. et låns fremtidige værdi er $ 0, fordi det er værdien efter den sidste betaling. Men hvis du vil spare $50,000 over 18 år til dit barns uddannelse, så er $50,000 den fremtidige værdi. Hvis det udelades, antages det, at værdien er 0. |
| type | Valgfrit. Variant angiver, hvornår ydelserne forfalder. Brug 0, hvis ydelserne forfalder i slutningen af betalingsperioden, eller brug 1, hvis ydelserne forfalder i begyndelsen af perioden. Hvis det udelades, antages det, at værdien er 0. |
Bemærkninger
En annuitet er en række faste kontantydelser, der foretages over en periode. En annuitet kan være et lån (f.eks. et privat realkreditlån) eller en investering (f.eks. en månedlig opsparingsplan).
Argumenterne Rente og Nper skal beregnes ved hjælp af betalingsperioder udtrykt i de samme enheder. Hvis rente f.eks. beregnes ved hjælp af måneder, skal nper også beregnes med måneder.
For alle argumenter gælder, at udbetalte beløb, f.eks. indskud på opsparinger, repræsenteres af negative tal, mens modtagne beløb, f.eks. udbytte, repræsenteres af positive tal.
Eksempel på forespørgsel
| Udtryk | Resultater |
|---|---|
| SELECT FinancialSample.*, PPMT([AnnualRate]/12,10,[TermInYears]*12,-[LoanAmount],0,0) AS INTPaid FROM FinancialSample; | Returnerer alle felterne fra tabellen "FinancialSample", beregner det betalte hovedstolsbeløb i "per"(10 i dette eksempel) af "LoanAmount" på basis af "AnnualRate" og "TermInYears" og viser resultaterne i kolonne INTPaid. |
VBA-eksempel
Bemærk
Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.
I dette eksempel bruges funktionen PPmt til at beregne, hvor meget af en ydelse for en bestemt periode, der er hovedstol, når alle ydelserne er af samme værdi. Givet er rentesatsen i procent pr. periode (APR / 12), den betalingsperiode, for hvilken hovedstolen ønskes (Period), det samlede antal betalinger (TotPmts), lånets nutidsværdi eller hovedstol (PVal), lånets fremtidige værdi (FVal), og et tal, der angiver, om betalingen forfalder i begyndelsen eller slutningen af ydelsesperioden (PayType).
Dim NL, TB, Fmt, FVal, PVal, APR, TotPmts, PayType, Payment, Msg, MakeChart, Period, P, I
Const ENDPERIOD = 0, BEGINPERIOD = 1 ' When payments are made.
NL = Chr(13) & Chr(10) ' Define newline.
TB = Chr(9) ' Define tab.
Fmt = "###,###,##0.00" ' Define money format.
FVal = 0 ' Usually 0 for a loan.
PVal = InputBox("How much do you want to borrow?")
APR = InputBox("What is the annual percentage rate of your loan?")
If APR > 1 Then APR = APR / 100 ' Ensure proper form.
TotPmts = InputBox("How many monthly payments do you have to make?")
PayType = MsgBox("Do you make payments at the end of month?", vbYesNo)
If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD
Payment = 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?"
MakeChart = MsgBox(Msg, vbYesNo) ' See if chart is desired.
If MakeChart <> vbNo Then
If TotPmts > 12 Then MsgBox "Only first year will be shown."
Msg = "Month Payment Principal Interest" & NL
For Period = 1 To TotPmts
If Period > 12 Then Exit For ' Show only first 12.
P = PPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType)
P = (Int((P + .005) * 100) / 100) ' Round principal.
I = Payment - P
I = (Int((I + .005) * 100) / 100) ' Round interest.
Msg = Msg & Period & TB & Format(Payment, Fmt)
Msg = Msg & TB & Format(P, Fmt) & TB & Format(I, Fmt) & NL
Next Period
MsgBox Msg ' Display amortization table.
End If