연금의 기간당 이자율을 지정하는 Double을 반환합니다.
구문
Rate( nper , pmt, pv [, fv ] [, type ] [, guess ] )
Rate 함수 구문에는 다음과 같은 인수가 사용됩니다.
인수 |
설명 |
nper |
필수 요소입니다. 연금의 총 지불 기간 수를 이중으로 지정합니다. 예를 들어 4년 자동차 대출에 대해 월별로 상환하는 경우 대출은 총 4 * 12(또는 48) 지불 기간이 있습니다. |
PMT |
필수 요소입니다. 각 기간마다 결제할 금액을 두 번 지정합니다. 지불은 일반적으로 연금의 수명 동안 변경되지 않는 원금과 이자를 포함합니다. |
태양광 발전 |
필수 요소입니다. 향후 일련의 지불 또는 영수증의 현재 값 또는 현재 값을 두 번 지정합니다. 예를 들어, 자동차를 구입하기 위해 돈을 빌릴 때 대출 금액은 월별 자동차 지불액의 대출자에게 현재 가치입니다. |
fv |
선택 요소입니다. 최종 결제 후 원하는 미래 가치 또는 현금 잔액을 지정하는 변형입니다. 예를 들어 대출의 미래 가치는 최종 지불 후의 값이기 때문에 $0입니다. 그러나 자녀의 교육을 위해 18년 동안 $50,000를 절약하려면 $50,000가 미래의 가치입니다. 생략하면 0이 가정됩니다. |
type |
선택 요소입니다. 결제 기한을 나타내는 숫자를 지정하는 변형입니다. 지불 기간이 끝날 때 결제가 마감되는 경우 0을 사용하거나, 기간이 시작될 때 결제가 만기되는 경우 1을 사용합니다. 생략하면 0이 가정됩니다. |
guess |
선택 요소입니다. 예상한 값을 지정하는 Variant는 Rate로 반환됩니다. 생략하면 추측 은 0.1(10%)입니다. |
주의
연금은 일정 기간 동안 이루어진 일련의 고정 현금 지불입니다. 연금은 대출(예: 주택 담보 대출) 또는 투자(예: 월별 저축 계획)일 수 있습니다.
모든 인수에서 저축과 같은 현금 지출은 음수로 표시하고 배당금과 같은 현금 수입은 양수로 표시합니다.
속도 는 반복을 통해 계산됩니다. 추측 값부터는 결과가 0.00001% 이내로 정확할 때까지 계산을 반복합니다. Rate가 20번의 시도 후에 결과를 찾을 수 없으면 실패합니다. 추측이 10%이고 속도가 실패하는 경우 추측을 위해 다른 값을 시도합니다.
쿼리 예제
Expression |
결과 |
SELECT FinancialSample.*, (Rate([TermInYears]*12,-[MonthlyRePayment],[LoanAmount],0,0,0.0.1)*12) AS InterestRate FROM FinancialSample; |
"TermInYears", "MonthlyRePayment" 및 "LoanAmount"를 기반으로 하는 테이블 "FinancialSample" 및 연간 이자의 "Rate"의 모든 필드를 반환하고 결과를 InterestRate 열에 표시합니다. |
VBA 예제
참고: VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.
이 예제에서는 Rate 함수를 사용하여 총 상환 횟수(TotPmts), 대출 상환액(Payment), 대출의 현재 가치 또는 원금(PVal), 대출의 미래 가치(FVal), 지급 기간의 시작 또는 종료 여부를 나타내는 숫자(PayType)를 고려하여 대출 금리를 계산합니다. 및 예상 이자율(Guess)의 근사치입니다.
Dim Fmt, FVal, Guess, PVal
Dim Payment, TotPmts, PayType, APR ' When payments are made. Const ENDPERIOD = 0, BEGINPERIOD = 1 Fmt = "##0.00" ' Define percentage format. FVal = 0 ' Usually 0 for a loan. Guess = .1 ' Guess of 10 percent. PVal = InputBox("How much did you borrow?") Payment = InputBox("What's your monthly payment?") TotPmts = InputBox("How many monthly payments do " & _ "you have to make?") PayType = MsgBox("Do you make payments at the end " & _ "of the month?", vbYesNo) If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If APR = (Rate(TotPmts, -Payment, PVal, _ FVal, PayType, Guess) * 12) * 100 MsgBox "Your interest rate is " & _ Format(CInt(APR), Fmt) & " percent."