Geeft als resultaat een gegevenstype Double waarmee de betaling op de hoofdsom van een annuïteit voor een bepaalde periode wordt aangegeven op basis van periodieke, vaste betalingen en een vaste rentevoet.
Syntaxis
PPmt(rente, aantal-termijnen, hw [, tw ] [, type _] )
De syntaxis van de functie PPmt heeft deze argumenten:
| Argument | Beschrijving |
|---|---|
| Tarief | Vereist. Getal met dubbele precisie waarmee de rente per periode wordt opgegeven. Als u bijvoorbeeld een autolening neemt met een jaarlijkse rente van 10 procent en per maand betaalt, bedraagt de rente per periode 0,1/12, oftewel 0,0083. |
| per | Vereist. Integer waarmee de betalingsperiode wordt aangegeven in het bereik van 1 tot en met aantal-termijnen. |
| aantal-termijnen | Vereist. Integer waarmee het totale aantal betalingsperioden voor de annuïteit wordt aangegeven. Als u bijvoorbeeld per maand betaalt voor een autolening van vier jaar, omvat uw lening in totaal 4 * 12 (oftewel 48) betalingsperioden. |
| PV | Vereist. Getal met dubbele precisie dat de huidige waarde (de waarde op dit moment) aangeeft van een reeks toekomstige betalingen of ontvangsten. Wanneer u bijvoorbeeld geld leent om een auto te kopen, is het geleende bedrag de huidige waarde voor de verstrekker van de lening. |
| tw | Optioneel. Variant waarmee de toekomstige waarde of de gewenste contante waarde na de laatste betaling wordt aangegeven. Zo is de toekomstige waarde van een lening € 0 omdat dit de waarde van de lening is na de laatste betaling. Als u echter € 50.000 wilt sparen over een periode van 18 jaar voor de opleiding van uw kind, is € 50.000 de toekomstige waarde. Als dit argument wordt weggelaten, wordt 0 als standaardwaarde gebruikt. |
| type | Optioneel. Variant waarmee wordt aangegeven wanneer betalingen moeten plaatsvinden. Gebruik 0 als betalingen aan het einde van de betalingsperioden moeten plaatsvinden of 1 voor betalingen aan het begin van de periode. Als dit argument wordt weggelaten, wordt 0 als standaardwaarde gebruikt. |
Opmerkingen
Een annuïteit is een reeks vaste contante betalingen gedurende een specifieke periode. Een annuïteit kan een lening zijn (bijvoorbeeld een hypotheek) of een investering (bijvoorbeeld een maandelijks spaarplan).
De argumenten rente en aantal-termijnen moeten worden berekend met behulp van betalingsperioden die in dezelfde eenheden worden uitgedrukt. Als rente bijvoorbeeld wordt berekend met behulp van maanden, moet aantal_termijnen ook worden berekend met behulp van maanden.
Voor alle argumenten worden betaalde bedragen (zoals stortingen op een spaarrekening) weergegeven als negatieve getallen, terwijl ontvangen bedragen (zoals dividenden) worden weergegeven als positieve getallen.
Voorbeeld van een query
| Expressie | Resultaten |
|---|---|
| SELECT FinancialSample.*, PPMT([Jaarrente]/12,10,[TermInYears]*12,-[LoanAmount],0,0) AS INTPaid VAN FinancialSample; | Retourneert alle velden uit de tabel 'FinancialSample', berekent de betaalde hoofdsom in de 'per' (10 in dit voorbeeld) van de 'LoanAmount' op basis van de 'AnnualRate' en 'TermInYears' en geeft de resultaten weer in kolom INTPaid. |
VBA-voorbeeld
Opmerking
In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.
In dit voorbeeld wordt de functie PPmt gebruikt om te berekenen hoeveel van een betaling over een bepaalde termijn de hoofdsom is wanneer alle betalingen van gelijke waarde zijn. Gegeven zijn het rentepercentage per termijn (APR / 12), de betalingstermijn waarvoor de hoofdsom gewenst is (Period), het totale aantal betalingen (TotPmts), de contante waarde of hoofdsom van de lening (PVal), de toekomstige waarde van de lening (FVal), en een getal dat aangeeft of de betaling aan het begin of aan het einde van de betalingstermijn verschuldigd is (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