NPER Function using repayments that increase over 5 years (Excel) - excel

I am trying to create a mortgage calculator that forecasts the number of months it will take to pay off the loan.
I have successfully done this for a basic calculation where the monthly payment doesn't change but what I need is a calculation that works for payments increasing over 5 years.
I have uploaded my spreadsheet to Dropbox at the following link as it might be easier to understand if you can see what I am doing:
Example spreadsheet
The value in V6 is the one that I want to display the months it will take to pay off the loan.
I use the basic loan details in cells G5,G6 and G7 and the monthly repayment in V5.
I then need to run this calculation to determine the monthly payment for year one (B12):
$G$8+(($B$16*52/12)*$B$12)+$G$9
This gives me the actual monthly payment. I then need to repeat these steps for years 2,3,4 and 5 in cells D12, F12, H12 and J12. So for example year five I would use the following formula:
$G$8+(($J$16*52/12)*$J$12)+$G$9
The formula I am using to actually get the monthly payments forecast is:
=ROUNDUP(NPER(G6/12,V5,-G5),0)
Now I understand that to calculate a basic loan works but I need the repayments to increase year on year and for the total months for the repayment to reflect this.
Please can someone suggest a way around this problem or point me in the right direction?

This does exactly what I need and provides a detailed answer with a template:
Experts Exchange example with explanation

Related

Retirement withdrawal calculator in Microsoft Excel (general formula)

I am currently trying to create an retirement withdrawal calculator in Microsoft Excel. Does anyone know a general formula that I can use to calculate my monthly withdrawal?
The following variables are given:
Amount saved at the beginning of retirement: y
Years of withdrawal: d
Rate of return: i
Frequency of withdrawals: monthly
After x years the initial amount should be used up.
For example:
Amount saved at the beginning of retirement: 100,000$
Years of withdrawal: 20 years
Rate of return: 5% per year
Frequency of withdrawals: monthly
After 20 years the initial amount should be used up.
I would like to calculate how much money I can withdraw per month. Does anyone know a formula behind the common calculators found on the Internet?
Thanks in advance.

Excel PMT on 6 months financing

I am able to use the PMT function in Excel for periods of 12, 24 and 36 months. But I am falling short of understanding how to use the function for 6 months periods.
Let's suppose I have a debt of 10 000$ and the annual interest from the bank is 10%.
If I pay monthly and I want to pay within the first year, I will do the following formula :
=PMT(10%/12;12;10000)
But what if I need to pay in 6 months?
At first I thought of doing
=PMT(10%/6;6;10000)
But this gives me more interest than paying over a year!
I searched various websites without luck.
My last resort was the official Excel website : they actually have an example of a payment over 10 months. Following their code, I would write :
=NPM(10%/12;6;10000)
The result is smaller than 12 months' interest (yay!), but why!?
Why do we calculate the interest over 12 months, and not 6? I can't seem to understand that part.
The issue is that you're adjusting an interest rate which is independent of the time you pay it off in. Technically PMT takes an interest rate equal to the period of time you are considering.
So if you're talking about paying over 6 months with an annual interest rate the correct formula is:
=PMT(10%/12;6;10000)
10%/12 is the 10% annual interest converted to a monthly period. 6 is the number of months, and 10000 is the value of the loan. 10%/6 is actually a bi-monthly interest rate.
Technically if you're compounding annually and pay off $10,000 in 5 years, at 10% p.a. the formula would be:
=PMT(10%;5;10000)

Select pay rate based on day and shift start time

Im creating an excel pay sheet so i can keep tabs on my pay.
I have two pay rates,
£9.30 is paid for hours worked from 6pm to 8am Monday to Thursday
£10.30 is paid for hours worked from 6pm Friday to 8am Monday.
I have a column that displays the pay rate, i want this to populate automatically with excel looking at the day of the week and then the start time and then returning the correct pay rate.
For example,
If the day is a Mon and the start time is 6pm return £9.30
If the day is Fri and the start time is 6pm return £10.30 etc etc
Any one have any ideas on how i can achieve this? Id rather this be formula based instead of VBA if possible but if it cant be formula based then VBA it is.
Thanks in advance
I had to make a few assumptions because your question was unclear about the possible start times for your shifts. Your wording and examples lead me to believe that your shifts always begin at 6 PM regardless of the day. I created a possible solution or start to a solution based on that assumption that does not rely on VBA. I've included links to an excel workbook with my solution and a screen shot. (I'm only allowed 2 links with my current rep.)
As Gowtham Shiva suggested in the comments, a screen shot of what you have so far would be helpful.
I created two tables and a named ranged called “valDays”. To use the workbook, you enter the date and start time for your shift in tblPay. Enter the pay rate for a specific day and time in tblRates. valDays provides a way to convert the text for a day of the week into a number for calculating date/time serial numbers.
Feel free to comment/message me for clarification. I’ll do my best to reply and refine the solution as necessary. I hope you find this answer helpful and appreciate feedback. This is my first time providing an answer on Stack Overflow.
I’m going to assume you know how to name a range, create tables, and rename tables in excel. If you don’t there are plenty of YouTubers and bloggers that cover these topics quite well.
List the days in a column off to the right. (I used column K.) “Sun”, “Mon”, “Tue”, etc. Select all the cells with the days of the week and name the range “valDays”.
Formula in tblRates[Serial]:
“=MATCH(tblRates[[#This Row],[Day]],valDays,0)+tblRates[[#This Row],[Time]]”
Formula in tblPay[Serial]:
“=WEEKDAY([Date])+[StartTime]”
Formula in tblPay[Rate]:
“=INDEX(tblRates[Rate],MATCH([Serial],tblRates[Serial],0))”
You can download the excel document and view these screenshots of a possible solution.
Link to Excel Workbook on Google Drive
Screenshot1

Excel NPV/IRR - Populate a range from annual savings as input

To provide a valid input to the NPV and IRR functions, I'm trying to create a range of values of annual even returns for a given number of years. Although question is also valid for any similar excel function, my specific case is related with NPV and IRR.
My initial investment is 25000$ and I get 5000$ from that investment annually for 10 years. Interest rate is 10% for NPV and IRR.
Instead of providing these values like BEFORE I'm looking for a way similar to AFTER, if possible without any macros, only by using a few functions?
Your first formula is actually discounting a 25000 investment made in 1 years time, then receiving cashflow of $5000 a year from the end of year 2, year 3 .... year 11
You wanted
=NPV(C1,C5:C14)-C4
=5777.84
which as an annuity can be calculated directly with
=-PV(10%,10,5000)-25000
=5777.84
On your second formula
=RATE(10,5000,-25000)
=15.1%

Can my Excel Function regarding year and month left to pay a debt at a specified rate be streamlined at all?

I wanted to make a sentence in Excel that would read "You will be free of debt in X years and X months, at $X per month." and stick it at the bottom of my budget so as to motivate myself. I used the values for:Total Debts (B27), and Amount Paid per Month (C23). Using only those reference values, and without using hidden cells, I put together the following:
="You will be free of debt in "&IF(ROUND(SUM(B27/C23),0)<12, 0, ROUND(SUM(B27/C23)/12,0))&" years and "&(IF(IF(MOD(ROUND(SUM(B27/C23),0),12)=0,0,(SUM(ROUND(SUM(B27/C23),0),-(12*ROUND(SUM(ROUND(SUM(B27/C23),0)/12),0)))))>0,IF(MOD(ROUND(SUM(B27/C23),0),12)=0,0,(SUM(ROUND(SUM(B27/C23),0),-(12*ROUND(SUM(ROUND(SUM(B27/C23),0)/12),0))))),(SUM(IF(MOD(ROUND(SUM(B27/C23),0),12)=0,0,(SUM(ROUND(SUM(B27/C23),0),-(12*ROUND(SUM(ROUND(SUM(B27/C23),0)/12),0)))))+12))))&" months at "&DOLLAR(C23)&" per month."
It works, but it isn't pretty, and I want it to be prettier. Are there any functions that I could be using that I don't know about, or is this as pretty as it gets without using hidden cells?
If A1 = total debt and A2 = monthly payments then...
Years remaining = FLOOR(A1/(A2*12),1)
and ...
Months remaining = CEILING((A1-A2*12*(FLOOR(A1/(A2*12),1)))/A2,1)
In your sheet this should work...
="You will be free of debt in "&FLOOR(B27/(C23*12),1)&" years and "&CEILING((B27-C23*12*(FLOOR(B27/(C23*12),1)))/C23,1)&" months, at $"&C23&" per month."

Resources