PPmt, funksjon

Gjelder for
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Returnerer et langt flyttall som angir avdraget på hovedstolen for en annuitet for en gitt periode, basert på periodiske, faste innbetalinger og en fast rentesats.

Syntaks

AM/AMT(rente; periode; antall_innbet;nåverdi [; sluttverdi ] [, type ] )

Syntaksen for funksjonen PPmt har disse argumentene:

Argumenter Beskrivelse
Vurdere Obligatorisk. Langt flyttall som angir rentesats per periode. Hvis du for eksempel får et billån med en årlig prosentsats (APR) på 10 prosent og foretar månedlige betalinger, er satsen per periode 0,1/12 eller 0,0083.
per Obligatorisk. Heltall som angir betalingsperioden i området fra 1 til antall _innbet.
antall_innbet Obligatorisk. Heltall som angir totalt antall avdragsperioder i en annuitet. Hvis du for eksempel betaler månedlige avdrag på et fireårig billån, har lånet totalt 4 * 12 (eller 48) avdragsperioder.
Nåverdi Obligatorisk. Dobbelt som angir nåverdien, eller dagens verdi, for en serie med fremtidige betalinger eller inntekter. Når du for eksempel låner penger til å kjøpe en bil, er lånebeløpet nåverdien til utlåner av de månedlige bilbetalingene du vil betale.
sluttverdi Valgfritt. Variant som angir en fremtidig verdi eller kontantbalanse du vil ha etter at du har betalt siste avdrag. Den fremtidige verdien for et lån er for eksempel 0 dollar fordi det er lånets verdi etter det siste avdraget. Hvis du imidlertid vil spare 500 000 dollar over 18 år til barns utdanning, er 500 000 den fremtidige verdien. Hvis dette utelates, brukes 0.
type Valgfritt. Variant som angir når betalingen forfaller. Bruk 0 hvis betalingen forfaller på slutten av betalingsperioden, eller bruk 1 hvis betalingen forfaller i begynnelsen av perioden. Hvis dette utelates, brukes 0.

Merknader

En annuitet er en serie med faste kontantavdrag som betales over tid. En annuitet kan være et lån (for eksempel et huslån) eller en investering (for eksempel en månedlig spareplan).

Argumentene sats og antall_innbet må beregnes ved hjelp av avdragsperioder som uttrykkes i de samme enhetene. Hvis rente for eksempel beregnes ved hjelp av måneder, må antall_innbet også beregnes ved hjelp av måneder.

For alle argumenter representeres kontanter du betaler ut, for eksempel bankinnskudd på sparekonti, av negative tall, og penger du får inn, for eksempel utbyttesjekker, av positive tall.

Eksempel på spørring

Uttrykk Resultater
SELECT FinancialSample.*, PPMT([AnnualRate]/12,10,[TermInYears]*12,-[LoanAmount],0,0) AS INTPaid FROM FinancialSample; Returnerer alle feltene fra tabellen "Finansielt utvalg", beregner hovedstolen som er betalt i "per"(10 i dette eksemplet) av "Lånebeløp" basert på "AnnualRate" og "TermInYears" og viser resultatene i kolonnen INTPaid.

VBA-eksempel

Obs!

I eksemplene nedenfor vises bruken av denne funksjonen i en VBA-modul (Visual Basic for Applications). Hvis du vil ha mer informasjon om hvordan du arbeider med VBA, velger du Utviklerreferanse fra rullegardinlisten ved siden av Søk og skriver inn ett eller flere søkeord i søkeboksen.

Dette eksemplet bruker PPmt-funksjonen til å beregne hvor stor del av en innbetaling for en bestemt periode som er hovedstol, når alle innbetalingene er av lik verdi. Gitt er prosentvis rente per periode (APR / 12), betalingsperioden som hovedstolen er ønsket for (Period), det totale antallet betalinger (TotPmts), nåverdien eller hovedstolen på lånet (PVal), den fremtidige verdien av lånet (FVal), og et tall som angir om betalingen forfaller i begynnelsen eller slutten av betalingsperioden (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