**Public Function FutureValue( _
ByVal vRate As Variant _
, ByVal vNPer As Variant _
, ByVal vPmt As Variant _
, Optional ByVal vPV As Variant _
, Optional ByVal vType As Variant _
) As Variant**

**Calculate the Future Value of an annuity based on fixed, periodic payments and a fixed interest rate. **

**Example:** What is the value 20 years from now of a savings account if you invest $100 per month in an account that pays 5.25% annual interest, assuming that the interest is compounded monthly? Approximately $42,311.18. FutureValue(0.0525 / 12, 20 * 12, -100) = 42311.1776128932

**Example:** How about is interest if only compounded annually? Approximately $40,743.87. FutureValue(0.0525, 20, -100 * 12) = 40743.8701285033

See the FutureValueVerify Subroutine for more examples of this function.

**See also:** InterestRate Function
NumberPeriods Function
Payment Function
PresentValue Function
PaymentType Function
FV Function (Visual Basic)
FV 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).

**vRate:** Interest rate per period, expressed as a decimal number. The vRate and vNPer arguments must be expressed in corresponding units. If vRate is a monthly interest rate, then the number of periods (vNPer) must be expressed in months. For a mortgage loan at 6% annual percentage rate (APR) with monthly payments, vRate would be 0.06 / 12 or 0.005. Function will return Null if vRate is Null or cannot be interpreted as a number.

**vNPer:** Number of periods. The vRate and vNPer arguments must be expressed in corresponding units. If vRate is a monthly interest rate, then the number of periods (vNPer) must be expressed in months. 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:** Optional present value (lump sum) of the series of future payments. Cash paid out is represented by negative numbers and cash received by positive numbers. vPV 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).

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

Entisoft Tools is a trademark of Entisoft.