Do you want to calculate loan amortization schedule in Excel? We can use PMT & SEQUENCE functions to quickly and efficiently generate the full loan amortization table for any number of years.
Set up input section for loan amortization table
First, you need to set up the parameters for calculating loan schedule. We need below information.

- Interest Rate (annualized)
- Loan duration (in years)
- Payments per year (for ex: 12 for monthly, 52 for weekly and 26 for fortnightly)
- Loan amount
For the sake of the example on this page, I am using 5.35% annual interest rate (cell D3), 30 years loan duration (cell D4), 12 payments per year (cell D5) and $100,000 loan amount (cell D6).
Write formulas to calculate the amortization schedule
Then, we need to calculate the amortization schedule or table. For this we can use the PMT, IPMT, PPMT functions along with SEQUENCE dynamic array function.
Setting up the amortization schedule in Excel Grid
First create a range of cells like below to do all the calculations.

Formula for generating all payment periods
To generate all payment periods, we can use the SEQUENCE function below.
For example, if you have 12 payments per year for 30 years, then the sequence function below generates numbers 1 thru 360.
=SEQUENCE(D5*D4)
Calculating the equal payments for each period
We can use PMT function to calculate the equated payment or installment amounts.
The syntax for PMT function is
=PMT(rate_of_interest,number_of_payments,
amount_borrowed)
In our case, as we have 12 payments per year, we need to divide the interest rate by 12 and multiply the number of years with 12. Finally, we want the same amount for all the periods. So our PMT formula will be:
=IF(C10#>0,
PMT($D$3/D5,D4*D5,D6))

Calculating the Principal portion
of each payment in the amortization schedule
We can use PPMT function to calculate the principal paid at each point of time. The syntax for this is…
=PPMT(
rate_of_interest,
payment_number
total_number_of_payments,
amount_borrowed)
As we need to calculate this value for all the periods, we can use the SPILL RANGE in C10# as the payment_number.
Our PPMT formula looks like this:
=PPMT(D3/D5,C10#,D4*D5,D6)
Formula for Interest portion for each payment in amortization schedule
We can use IPMT function to calculate the interest portion in our schedule. The syntax and logic are same as PPMT.
Here is the IPMT formula to use:
=IPMT(D3/D5,C10#,D4*D5,D6)
Formula for Balance at the end of each period
The final formula in our amortization schedule is balance. For this, we can use a variety of Excel formulas. I particularly like using SCAN function for this as this is simple and automatically scales up or down depending on how many payments we make.
SCAN is a new Excel 365 function that scans a list or array and runs a calculations on it. Then it returns the results the values for each step of the calculation.
Example of SCAN:
=SCAN(0, A1:A10, SUM)
Result:
Returns the running total of the values in A1:A10
Explanation:
- SCAN starts the calculation with 0.
- Then it reads the values of A1:A10, one at a time.
- It then adds the values to 0 (because the third argument is SUM) and returns the intermediate results.
- So, the results will become:
- First value: 0+A1
- Second value: first value + A2
- Third value: second value + A3…
Learn more about SCAN function here.
We can use below SCAN function to get the balance at the end of each payment in our amortization table.
=SCAN(D6,E10#,SUM)
This function will start the calculations with D6 (amount borrowed) and scans thru the principal paid column (E10#) and calculates the running total of balance by using the SUM function.

Calculating SUMMARY of Amortization Table
Often, you may want to calculate the summary from an amortization table like below:

We can use simple arithmetic formulas like SUM or division (/) to calculate such values.
As you can see, with a 30 year payment of $100,000 loan at 5.35% interest rate, more than half of the payments (50.26%) go towards interest.
Limitations of Amortization Schedules
While amortization schedules are great to understand and model cashflows (or plan for future payments), they are quite rigid and do not reflect real-world scenarios. Here are a few limitations of this approach.
- Amortization tables assume interest rates stay same for the entire duration.
- They do not cater for excess payment. If you want to prepare an amortization or loan schedule with excess payments, use this template.
- The calculation does not consider any fixed or recurring fees or charges (such as loan administration charge once a year).
Download Loan Amortization Schedule Excel Template
Please download my loan amortization schedule template and use it to see the schedule for your data.
If you have an older version of Excel (other than 365), use the “non-365” worksheet to run the calculations.
Other Loan Calculators & Schedules

- If you want to test impact of excess payments on the amortization, try my loan schedule with excess payments calculator.
- Not sure how much you can borrow? See my Interactive Mortgage Calculator with Excel form-controls.

Have a question about Amortization Schedule Template?
Leave a comment with your question so I can help you.















13 Responses to “Convert fractional Excel time to hours & minutes [Quick tip]”
Hi Purna..
Again a great tip.. Its a great way to convert Fractional Time..
By the way.. Excel has two great and rarely used formula..
=DOLLARFR(7.8,60) and =DOLLARDE(7.48,60)
basically US Account person uses those to convert some currency denomination.. and we can use it to convert Year(i.e 3.11 Year = 3 year 11 month) and Week(6.5 week = 6 week 5 days), in the same manner...
This doesn't work for me. When applying the custom format of [h]:mm to 7.8 I get 187:12
Any ideas why?
@Jason
7.8 in Excel talk means 7.8 days
=7.8*24
=187.2 Hrs
=187 Hrs 12 Mins
If you follow Chandoo's instructions you will see that he divides the 7.8 by 24 to get it to a fraction of a day
Simple, assuming the fractional time is in cell A1,
Use below steps to convert it to hours & minutes:
1. In the target cell, write =A1/24
2. Select the target cell and press CTRL+1 to format it (you can also right click and select format cells)
3. Select Custom from “Number” tab and enter the code [h]:mm
4. Done!
Hi, sorry to point this out but Column C Header is misspelt 'Hours Palyed'
good one
So how do I go the other way and get hours and minutes to fractional time?
If you have 7.5 in cell A1,
- Use int(A1) to get the hours.
- Use mod(A1,1)*60 to get minutes.
If you have 7:30 (formatted as time) in A1
- Use hours(a1) to get hours
- Use minutes(a1) to get minutes.
I had the same issue. You can solve it by changing the format as described above:
Right click cell > Format Cells > (In Number tab) > Custom > Then enter the code [h]:mm
([hh]:mm and [hhh]:mm are nice too if you want to show leading zeros)
Thanks guys, these are the tips I'm looking for.
...dividing the number of minutes elapsed by the percent change is my task - "int" is the key this time
It doesnt work for greater than 24 hours
It returns 1:30 for 25.5 hours. It should have returned 25:30
Ideally I would right function as
=QUOTIENT(A1,1)&":"&MOD(A1,1)*60
Sorry, replied to wrong comment....
----
I had the same issue. You can solve it by changing the format as described above:
Right click cell > Format Cells > (In Number tab) > Custom > Then enter the code [h]:mm
([hh]:mm and [hhh]:mm are nice too if you want to show leading zeros)
Clever use of MOD here to extract the decimal part of a number. Divide a number containing a decimal by 1 and return the remainder. Humm. Very clever.
Thanks very much, extremely useful !