Calculation Issues

How to Create a Dynamic Excel Loan Repayment Schedule

Jason MillerJason Miller Nov 2, 2026 871 views

Question details

The user needs an automatically expanding loan amortization table that generates the correct number of payment periods whenever the loan term or payment frequency changes.

How to Create a Dynamic Excel Loan Repayment Schedule
Product
Excel
Device & OS
not provided
Scenario
Setting up a flexible financial model where loan variables are frequently adjusted, requiring the schedule to expand or contract without manual row editing.
Observed behavior
The goal is to automatically output exact payment rows (e.g., 20 rows for a 10-year term with two payments per year) while accurately calculating payment, principal, interest, and remaining balance.
Before you start

Ensure you have your primary loan variables ready in separate cells, including the total loan amount, annual interest rate, loan term in years, and the number of payments per year.

Solution 1Recommended

Use Dynamic Array Formulas and Financial Functions

This is the most efficient method for modern spreadsheet versions, utilizing the SEQUENCE function to automatically expand the schedule based on input variables.

By combining dynamic array functions with standard financial formulas, your repayment schedule will spill down the exact number of rows needed without requiring VBA or complex macros.

1
Set Up Input Cells

Create clear, named input cells at the top of your sheet for Loan Amount, Annual Interest Rate, Term in Years, and Payments per Year.

2
Generate the Period Column

In the first cell of your schedule's Period column, enter the formula =SEQUENCE(Years*Payments_Per_Year). This will instantly generate a numbered list of all payment periods.

3
Calculate the Total Payment

In the Payment column, use the PMT function. Ensure you divide the annual rate by the payments per year, and reference the dynamic period array (using the # symbol) to calculate the fixed payment.

4
Calculate Principal and Interest

In adjacent columns, apply the PPMT function for principal reduction and the IPMT function for interest, referencing the dynamic period numbers to fill the entire column automatically.

5
Calculate Remaining Balance

In the Balance column, subtract the cumulative principal paid from the initial loan amount for each dynamic row.

Use Dynamic Array Formulas and Financial Functions
Formula Adjustments: Always remember to adjust your annual interest rate (Rate / Payments per Year) to match your payment frequency to avoid calculation errors.
Smart Spreadsheet Solution

Easily Build Dynamic Amortization Schedules with WPS Spreadsheet

WPS Spreadsheet fully supports advanced financial functions like PMT, IPMT, PPMT, and dynamic array formulas, allowing you to instantly build responsive loan schedules without complex coding.

  1. 1. Open a Blank Workbook: Launch WPS Spreadsheet and create a new blank workbook to start building your model.
  2. 2. Input Loan Variables: Enter your core loan details, such as Loan Amount, Interest Rate, and Term, into dedicated cells.
  3. 3. Apply Dynamic Functions: Use the SEQUENCE function to generate the exact number of rows needed for your payment periods.
  4. 4. Complete the Schedule: Utilize WPS Spreadsheet's built-in PMT, IPMT, and PPMT functions to accurately populate the repayment table.
Fully compatible with Microsoft Excel financial functions and formulas.Seamless support for dynamic arrays (like SEQUENCE) to automatically expand schedule rows.Lightweight and incredibly fast, even when processing complex financial models.Access to a wide variety of free, built-in templates for loan amortization and financial tracking.
microsoft office alternative - wps office

Frequently Asked Questions

Why isn't my PMT function calculating the correct monthly payment?

Ensure your interest rate and total periods are aligned with your payment frequency. For monthly payments, you must divide the annual interest rate by 12 and multiply the loan term in years by 12.

Do I need to use VBA to make my amortization table dynamic?

No. While VBA was historically required to add or delete rows automatically, modern spreadsheet features like dynamic array formulas (such as SEQUENCE) or Power Query allow you to create automatically expanding tables without writing macro code.

How do I calculate the remaining balance after a specific payment?

You can calculate the remaining balance by subtracting the cumulative principal paid from the original loan amount. Alternatively, you can use the CUMPRINC function to find the total principal paid up to any specific period.