정기적인 고정 지급액과 고정 이자율을 기준으로 연금의 주어진 기간에 대한 원금을 지정하는 Double을 반환합니다.
구문
PPmt(rate, per,nper,pv [, fv ] [, type ] )
PPmt 함수 구문에는 다음과 같은 인수가 있습니다.
| 인수 | 설명 |
|---|---|
| 요금 | 필수 요소입니다. 기간당 이자율을 두 번 지정합니다. 예를 들어, 연이율(APR) 10%로 자동차 대출을 받고 매월 상환하는 경우 기간당 이자율은 0.1/12 또는 0.0083입니다. |
| 당 | 필수 요소입니다. 1에서 nper 범위의 결제 기간을 지정하는 정수입니다. |
| nper | 필수 요소입니다. 연금의 총 지불 기간을 지정하는 정수입니다. 예를 들어, 4년 자동차 대출을 매월 상환하는 경우 대출의 상환 기간은 총 4 * 12(또는 48)입니다. |
| PV | 필수 요소입니다. 일련의 미래 지불 또는 영수증의 현재 가치 또는 오늘의 가치를 지정하는 이중 것입니다. 예를 들어, 자동차를 사기 위해 돈을 빌릴 때 대출 금액은 매월 지불할 자동차 상환액의 대출 기관에 대한 현재 가치입니다. |
| fv | 선택 요소입니다. 최종 결제 후 원하는 미래 가치 또는 현금 잔액을 지정하는 변형입니다. 예를 들어 대출의 미래 가치는 최종 상환 후의 가치이므로 0달러입니다. 그러나 자녀의 교육을 위해 50,000년 동안 $18를 저축하고 싶다면 $50,000가 미래 가치입니다. 생략하면 0으로 간주됩니다. |
| type | 선택 요소입니다. 지불 기한을 지정하는 변형입니다. 지불 기한이 지불 기간 종료 시에 만료되는 경우 0을 사용하고, 지불 기한이 기간 시작 시에 만료되는 경우 1을 사용합니다. 생략하면 0으로 간주됩니다. |
주의
연금은 일정 기간 동안 이루어지는 일련의 고정 현금 지불입니다. 연금은 대출(예: 주택 담보 대출) 또는 투자(예: 월 저축 계획)일 수 있습니다.
rate 및 nper 인수는 동일한 단위로 표현된 지불 기간을 사용하여 계산해야 합니다. 예를 들어 월을 사용하여 요금 을 계산하는 경우 nper 도 월을 사용하여 계산해야 합니다.
모든 인수에서 저축과 같은 현금 지출은 음수로 표시하고 배당금과 같은 현금 수입은 양수로 표시합니다.
쿼리 예제
| Expression | 결과 |
|---|---|
| SELECT FinancialSample.*, PPMT([AnnualRate]/12,10,[TermInYears]*12,-[LoanAmount],0,0) AS INTPpaid FROM FinancialSample; | "FinancialSample" 테이블의 모든 필드를 반환하고, "AnnualRate" 및 "TermInYears"를 기반으로 "LoanAmount"의 "per"(이 예제에서는 10)에서 지불하는 원금을 계산하고 결과를 INTPpaid 열에 표시합니다. |
VBA 예제
참고
VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.
이 예제에서는 PPmt 함수를 사용하여 특정 기간의 지불액 중 모든 지불액의 가치가 동일한 경우 원금이 되는 금액을 계산합니다. 기간당 이자율(APR / 12), 원금 부분을 원하는 상환 기간(Period), 총 상환 횟수(TotPmts), 대출의 현재 가치 또는 원금(PVal), 대출의 미래 가치(FVal), 상환 기간 시작 또는 종료 시점에 상환 기한을 나타내는 숫자(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