**Public Function InterestRate( _
ByVal vNPer As Variant _
, ByVal vPmt As Variant _
, ByVal vPV As Variant _
, Optional ByVal vFV As Variant _
, Optional ByVal vType As Variant _
, Optional ByVal vGuess As Variant _
) As Variant**

**Calculate the fixed Interest Rate per period for an annuity based on fixed, periodic payments. **

What is the Annual Percentage Rate (APR) on a four-year auto loan for a $20,000 car where the monthly payment is $483.58? Approximately 7.5002%. InterestRate(4 * 12, -483.58, 20000) * 12 = 0.0750021012784669

See the NumberPeriodsVerify Subroutine for more examples of this function.

**See also:** NumberPeriods Function
Payment Function
PresentValue Function
FutureValue Function
PaymentType Function
Rate Function (Visual Basic)
RATE Function (Microsoft Excel)

**Summary:** An annuity is a series of fixed payments (all payments are the same amount) made over time. An annuity can be a loan (such as a car loan or a mortgage loan) or an investment (such as a savings account or a certificate of deposit).

**vNPer:** Number of periods. The vNPer argument and the return value will be expressed in corresponding units. If the number of periods (vNPer) is expressed in months, then the interest rate returned by this Function will be a monthly interest rate. For a 30-year mortgage loan with monthly payments, vNPer would be 30 * 12 or 360. Function will return Null if vNPer is Null or cannot be interpreted as a number.

**vPmt:** Amount of the payment made each period. Cash paid out is represented by negative numbers and cash received by positive numbers. Function will return Null if vPmt is Null or cannot be interpreted as a number.

**vPV:** Present value (lump sum) of the series of future payments. Cash paid out is represented by negative numbers and cash received by positive numbers. Function will return Null if vPV is Null or cannot be interpreted as a number.

**vFV:** Optional future value (cash balance) left after the final payment. Cash paid out is represented by negative numbers and cash received by positive numbers. The future value of a loan will usually be 0 (zero). vFV defaults to 0 (zero) if it is missing or Null or cannot be interpreted as a number.

**vType:** Optional argument that specifies when payments are due. Set to 0 (zero) if payments are due at the end of the period, and set to 1 (one) if payments are due at the beginning of the period. vType defaults to 0 (zero), meaning that payments are due at the end of the period, if it is missing or Null or cannot be interpreted as a number. Function returns Null if vType is not 0 (zero) nor 1 (one).

**vGuess:** Optional guess of the Interest Rate which is ignored by this function, but has been retained for compatibility with the Excel and Visual Basic versions of this function.

**Return value:** Interest rate per period, expressed as a decimal number. If the number of periods (vNPer) is expressed in months, then the interest rate returned will be a monthly interest rate; multiply it by 12 to get the annual percentage rate (APR).

**Algorithm:** Function uses successive approximation to calculate the Internal Rate of Return. It will return Null if it cannot calculate the result to an accuracy of 2.22044604925031E-16 (D1MACH(4)) within 256 tries. In practice, this seldom happens.

**v2.0 Addition:** This function is new to this version of Entisoft Tools. Copyright 1996-1999 Entisoft

Entisoft Tools is a trademark of Entisoft.