Modification to ROI Formulas

EE Professionals,

I have a very nifty macro that DMille wrote for me that allows you to put in a "Time Horizon", as a number of months and it auto generates the date fields and copies the monthly calculation formulas into each litigimate month.  This is used to allow someone to determine how many months are to be included in a financial analysis to calculate NPV, IRR and BEP.   Here's the challenge. The formulas for NPV and IRR need to be reconfigured to automatically adapt to the number of months selected in the Time Horizon (since it is now dynamic).

Attached is the WS.  The formulas that need modification are in AF3 and AF4 (right now they are fixed at 36 months).

Thank you in advance,

B.
Workbench-v26.xlsm
Bright01Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

dlmilleCommented:
I suppose I already did this for you in this workbook, on a related question. NVP, IRR, and BEP along with the chart are all dynamic ;)

See attached.

Dave
Workbench-v27-r2.xlsm
0
Bright01Author Commented:
Dave,

It's a little more complex........... The dynamic Time Horizon that you created works great. However, the formula modification that is required to adapt to the new, dynamic Horizon, that is set, is in cell AF3, AF4 and AF5:  

SAMPLE OF THE FORMULA IN AF3:

=IF(AA3=0,"",(NPV((1+AC3+AD3)^(1/12)-1,AI3:BR3)+AH3))

The mod. needs to be changing the end point or last month in the new Time Horizon, which is currently static "BR3"  (I had to set it up for 36 months).  When you set up the dynamic Months, the Months can change but I don't know how to get the formula, specifically BR3 (the end point) to automatically reflect the new, dynamic range.

EXAMPLE:

If I change the Time Horizon to 6 months, BR3 in the formula should be AN3.  If I change the Time Horizon to 12 months, BR3 in the formula should actually reflect AT3.  Only at 36 months in the Time Horizon, where your code fires and it gives me the 36 months correctly, is the formula actually correct as BR3.

Make sense?  Easy fix?

B.
0
dlmilleCommented:
Ok - this is accomplished with 2 range names:

FinOffset=OFFSET(Scenario_Template!$AF3,0,3,1,COUNT(Scenario_Template!$AI3:$XFD3))
Note, you have to be positioned on cell AF3 when this is created.  Note also, the lack of dollar signs before the 3 in $AF3 and $AI3:$XFD3.  That means, when this formula is used on another row, that that row number will change in the formula.

The formula creates an offset 3 columns to the right, 1 row high, and as many wide as data is found from AI to XFD

This is used for the NPV and IRR calc.

The BEPOffset is a little different, as it references the range one row above to get its range:

BEPOffset=OFFSET(Scenario_Template!$AF5,-1,3,1,COUNT(Scenario_Template!$AI4:$XFD4))
This was created while the cursor was sitting on AF5.

After setting a time horizon, if you hit F2 on one of these formulas, then click on the range name, e.g., finOffset, then hit F9, you'll see all the CF's in that range - so you can see for 6 months, there are 6 numbers in there, 24, there would be 24, etc.

When new scenario sheets are created, these range names will be created for that respective sheet as well.

See attached.

Cheers,

Dave
Workbench-v27-r3.xlsm
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

Bright01Author Commented:
Dave,

Before I test and integrate;  does this work both for the "new scenarios" (replicas of "Scenario_Template") as well as the "new use cases" - (replicas of use cases within new scenarios)?

B.
0
dlmilleCommented:
Yes - but it won't work with scenarios that were created BEFORE this range name was added.

I tested it after having created it in the Scenario_Template tab, then made a copy of the Scenario_Template tab to create Scenario1.  I then added Use Cases and tested that.

Works fine from my end.

Dave
0
Bright01Author Commented:
Brilliant!  

So just as I integrate this..... is the FinOffSet that is created in the Named Range File automatically generated for the Scenario1 Tab, or do I have to put that in as a Named Range addition?

B.
0
dlmilleCommented:
Nope.  As long as the name exists in the Scenario_Template tab, then when you create new scenarios, it will get replicated to the new tab for use, there.

Dave
0
dlmilleCommented:
I tried it at the WORKBOOK level scope, and it didn't work the way I'd imagined, so these names are at the Worksheet level, so they get created in Scenario_Template.  When a new scenario is generated, then the new range names are created on the new Scenario# sheet as well.

Dave
0
Bright01Author Commented:
So I don't need to replicate the FinOffSet for Scenario1; just the Scenario_Template....

Got it.

B.
0
Bright01Author Commented:
Great Work Dave.....tough formula.  Testing it going forward; but integrated well.

Thanks again,

B.
0
Bright01Author Commented:
Dave,

When I replicate a use case, I get Excel asking me if I want to use the FinOffset and BEPOffset each time I add one.  Is there a line of code that makes that automatic?

Thank you,

B.
0
dlmilleCommented:
Add

Application.DisplayAlerts = False

Before the routine that replicates scenario template does the copy
0
Bright01Author Commented:
Dave,

Thank you!  Works.   Hey Big Congrats on your point standing!  I don't know what you guys win for your work but it should be great.

B.
0
dlmilleCommented:
Tks

It's just points so mostly recognition or ego

Tshirts at certain milestones and if you lead for the year some trophy or something

I do it for the learning, community service, comradre, and I guess recognition in that order

I've learned so much it's really made my job easier at work and my first passion/career was in IT and my hope is to retire with capability so I can earn a few and have fun at the same time

Dave
0
Bright01Author Commented:
Well, I would invite you to come visit the East Coast and the Mountains of NC whenever you want and I'll put you and family up.  Within a couple of years of retirement myself.......and really enjoy EE and the personalities.

B.
0
dlmilleCommented:
I'm headed to a meeting in Cambridge in June

About the closest but maybe DC in the Fall
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Excel

From novice to tech pro — start learning today.

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.