This example returns the future value of an investment given the percentage rate that accrues per period (APR / 12), the total number of payments (TotPmts), the payment (Payment), the current value of the investment (PVal), and a number that indicates whether the payment is made at the beginning or end of the payment period (PayType). Note that because Pmt represents cash paid out, it's a negative number.

Const ENDPERIOD = 0, BEGINPERIOD = 1 ' When payments are made.

Const MB_YESNO = 4 ' Define Yes/No buttons.

Const ID_NO = 7 ' Define No as a response.

Fmt = "###,###,##0.00" ' Define money format.

Payment = InputBox("How much do you plan to save each month?")

APR = InputBox("Enter the expected interest annual percentage rate?")

If APR > 1 Then APR = APR / 100 ' Ensure proper form.

TotPmts = InputBox("For how many months do you expect to save?")

PayType = MsgBox("Do you make payments at the end of month?", MB_YESNO)

If PayType = ID_NO Then PayType = BEGINPERIOD Else PayType = ENDPERIOD

PVal = InputBox("How much is in this savings account now?")

FVal = FV(APR / 12, TotPmts, -Payment, -PVal, PayType)

MsgBox "Your savings will be worth " & Format(FVal, Fmt) & "."