• Status: Solved
• Priority: Medium
• Security: Public
• Views: 246

# future formual for VB

How can I write a future amount formula in VB with the math formula being A(1+r)^(n-1)+A(1+r)^(n-2)+...+A(1+r)^0?
0
jennflock
1 Solution

Commented:
this should do it

public function FA(r as long, a as long, n as long)

dim tempL as long
dim i as long
i = 1
do until n = i - 1
templ = templ + (a * (1 + r)) ^ (n - I)
i = i + 1
loop

end function
0

Commented:
i forgot the line
fa = templ right before the end function
0

Commented:
hi..

I have done a lot of finance..roi programs.

just state in words what you wish to do.

also give a formula if you have a formula/equation

that you wish to solve on the computer.

leo
0

Senior .Net ConsultantCommented:
You can use the FV (future value) function. See this example (copied from the VB help):

Dim Fmt, Payment, APR, TotPmts, PayType, PVal, FVal
Const ENDPERIOD = 0, BEGINPERIOD = 1   ' When payments are made.
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?", vbYesNo)
If PayType = vbNo 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) & "."

If not the correct formula, open the VB help for the FV function and see the "See also" link. You have plenty of financial functions alread alvailable.
0

Commented:
hi again jennflock,

in VB   FV = P * (1+r)^n

http://www.datachimp.com/articles/finworks/fmfutval.htm
this is a copy/paste from this link.

To find a formula for future value, we'll write P for your starting principal, and r for the rate of return expressed as a decimal. (So if the interest rate is 5%, r equals .05).
Your balance will grow according to the following schedule:

Year Balance
Now P
1 P + rP
2 (P + rP) + r(P + rP)

This starts to get messy in a hurry. But you can simplify it by noticing that you can keep pulling out factors of (1 + r) from each line. If you do that, the balances collapse to a simple pattern:

Year Balance
Now P
1 P(1 + r)
2 P(1 + r)2

If you follow this pattern out for n years, you get the general formula for future value:

1. FV = P(1 + r)n

in VB   FV = P * (1+r)^n

leo

0

Commented:
Hi jennflock@devx,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will suggest to:

Accept emoreau's comment(s) as an answer.

jennflock@devx, if you think your question was not answered at all or if you need help, you can simply post a new comment here.  Community Support moderators will follow up.

EXPERTS: If you disagree with that recommendation, please post an explanatory comment.
==========
DanRollins -- EE database cleanup volunteer
0

Commented:
Comment from expert accepted as answer

Computer101
E-E Moderator
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.