Interactive Mortgage Calculator to know how much you can borrow (with Excel)

Share

Facebook
Twitter
LinkedIn

Today we will build a mortgage payment calculator using excel. But we will not build a boring excel sheet, we will build a mortgage calculator that is easy to play with.

A mortgage payment is a monthly installment that you pay towards a loan. Any mortgage loan will typically have,

  • loan amount
  • duration of the loan (also called as tenure of mortgage) in years
  • interest rate (APR) per year

Given these 3 parameters, we can easily determine the monthly installment amount (this will be the same amount for all months during loan tenure)

We are going to use Excel’s form controls (more on this below) to build a mortgage payment calculator like this:
Mortgage Payment Calculator

Why you should not be boring and use the form controls

A form control is a button or check box or scrollbar or some other click-able thing you see in Windows. Do you know that you can add the very same controls to Excel spreadsheet to make the it interactive?

For example,

  • instead of asking a user to enter “yes” or “no” in a cell, you can ask them to click a check box.
  • instead of taking “age” in a cell, you can use a scroll bar and set the values from 0 to 100.

This way of gathering inputs is more fun, engaging and interactive.

Now that you find form controls hot and attractive, lets proceed and make a house loan payment calculator.

How is mortgage payment calculated?

As I said above, any mortgage (or housing loan) will have 3 parts – loan amount (p), loan tenure (n) and annual interest rate (r).

Given the values of P, N and R, we can find the monthly payments using Excel’s PMT formula like this:

=PMT(R/12,N*12,P)

[Related: PMT formula syntax & examples]

[Related: Amortization Schedule in Excel]

We are dividing interest rate (R) by 12 since R is annual interest rate and we make monthly payments.

We are multiplying loan duration (N) with 12 since we are going to make monthly payments.

Making the mortgage calculator in Excel

We will use scroll-bar controls to take numeric inputs required (P,N and R) for the payment calculation. And we feed these values to PMT formula to find the monthly installment amount.

Step 1: Add a Scroll-bar Control

We will use this scroll bar to take “loan amount” input. To keep it simple, we will ask users to enter input in ‘000s. So, if the loan is $120,000, the input should be 120.

First add a scroll-bar form control to your excel sheet. To do this go to Developer Ribbon > Insert > Scroll-bar Form Control in Excel (related: enable developer toolbar in Excel)

Add a Scroll-bar Control

Adding a scroll-bar control in Excel using Developer Ribbon

Once selected, just add the control to spreadsheet by clicking anywhere.

Step 2: Set Properties for this Scroll-bar

To set the properties for the scrollbar control, right click on it and go to “format control” option. Now go to “Control” tab.

Here set minimum and maximum values for the scroll bar. To keep our model simple, just set minimum as 35 and maximum has 500.

Also, select a cell to link the scrollbar. When you do this, excel links the scroll bar to the selected cell. So whenever scroll bar is updated the cell gets updated too (and vice-a-versa). See this illustration:

Set Properties for this Scroll-bar - Excel

Step 3: Add Remaining Scroll bars

Repeat the same steps for 2 other scroll bars. One for interest rate and one for loan tenure.

Make sure you set the minimum and maximum values in a reasonable range.

Step 4: Plug the values in to PMT formula

Now that the scroll bars are ready, just write the PMT formula. Assuming you have linked scroll bars like this:

  • Loan amount in cell A1
  • Interest rate in cell A2
  • Loan tenure (years) in cell A3

The formula will be,

=PMT((A2/12)%,A3*12,A1)

Remember, PMT returns value in negative numbers (as it is the amount we need to pay, not get). But you can make it positive (for display purposes) by multiplying it with -1 like this = -PMT((A2/12)%,A3*12,A1)

Step 5: Play with your Model

Now your mortgage payment calculator is ready. You can play with it by testing various combinations and finding monthly payments. You can easily see what happens when you increase loan tenure or decrease interest rate.

Mortgage Payment Calculator

Download Excel Mortgage Payment Calculator

Here is the excel mortgage payment calculator file. Download and play with it.

Bonus – Making an Amortization Schedule

You can easily extend this model to add an amortization schedule to see how much of each monthly payment is towards principal and how much is for interest.

  • You can calculate principal portion for any month using PPMT formula like this =PPMT(R/12,M,N*12,P). Here “M” is the month for which you want principal amount.
  • You can calculate interest portion for any month using IPMT formula like this =IPMT(R/12,M,N*12,P).

Full tutorial: Loan Amortization Schedule with Excel.

Do you love form controls?

Do you use form controls in your spreadsheets? I find them pretty intuitive and use them wherever I can. I have made many complex spreadsheet models easy to understand and work with by just adding form controls. The beauty is that, they require no programming or anything. You just add them and link them to a cell.

What about you? Do you love form controls? Where do you use them most?

Learn More about Excel Form Controls:

Facebook
Twitter
LinkedIn

Share this tip with your colleagues

Excel and Power BI tips - Chandoo.org Newsletter

Get FREE Excel + Power BI Tips

Simple, fun and useful emails, once per week.

Learn & be awesome.

Welcome to Chandoo.org

Thank you so much for visiting. My aim is to make you awesome in Excel & Power BI. I do this by sharing videos, tips, examples and downloads on this website. There are more than 1,000 pages with all things Excel, Power BI, Dashboards & VBA here. Go ahead and spend few minutes to be AWESOME.

Read my storyFREE Excel tips book

Overall I learned a lot and I thought you did a great job of explaining how to do things. This will definitely elevate my reporting in the future.
Rebekah S
Reporting Analyst
Excel formula list - 100+ examples and howto guide for you

From simple to complex, there is a formula for every occasion. Check out the list now.

Calendars, invoices, trackers and much more. All free, fun and fantastic.

Advanced Pivot Table tricks

Power Query, Data model, DAX, Filters, Slicers, Conditional formats and beautiful charts. It's all here.

Still on fence about Power BI? In this getting started guide, learn what is Power BI, how to get it and how to create your first report from scratch.

49 Responses to “Introduction to Slicers – What are they, how to use them, tips, advanced techniques & interactive reports using Excel Slicers”

  1. Great article!
    If you want to learn a bit more about using slicers in VBA, head over here:
    http://jkp-ads.com/articles/slicers03.asp

  2. XLarium says:

    Hi

    I downloaded cube-formula-slicer-selection.xlsx.
    Why is 'Report Connections' grayed out?

  3. Carlos Gonzalez says:

    Great article!! Thank you very much... This post is one of the most helpful for my job!

  4. TKSSKT says:

    Great Introduction. Thanks very much.

  5. Mando says:

    Wow! trying to use this on the reports that I have now. I really liked that Quantity and Amount Bar graph used on the pivot-multi tab, but for the life of me, I can't seem to replicate it from scratch. Help please?

  6. Abhilash VK says:

    This is awesome! I will favorite this page in my blog, http://www.exceltoxl.com

  7. MrXInDowntown says:

    Since I've known slicers about 2-3 yrs ago, I've pretty much used them in every damn report I do. Everyone that sees it for the first time is like "This is the best thing ever. Did you do that using excel or something else?" 😀 My bosses are so used it that when they see a report from someone else that doesn't have slicers they send it to me to redo it :).

  8. MrXInDowntown says:

    Couple of tips:-
    Tip 1:
    If for lack of space or say you want ability to search within a filter due to numerous values being present but still want it to connect to multiple pivot tables or charts then
    1. Setup a pivot table with just the report filter
    2. Create a slicer with the same field and tie that to all the pivot tables/charts that you want.
    3. Just place it some out of sight.
    Now you have a dropdown with all your values with search option plsu it is also connected to all your charts and pivot tables.

    TIP 2:
    In Excel 2013, slicers can be used with just plain tables as well. Not limited to pivot tables.

  9. Paulo says:

    Congrats!

    Nice content : )

  10. indzara says:

    Very comprehensive. Explained in an extremely simple way. I have been using Slicers for a while, but still learnt new things from this post. Thanks for sharing. Best wishes.

  11. excel says:

    Awesome Explanation !!

  12. Raj says:

    I have joined this blog recently. Brilliant tools are available that I started using in my day to day work. Brilliant site. Thanks heaps.

  13. […] Read the full article here: Introduction to Slicers – What are they, how to use them, tips, advanced techniques & interact… […]

  14. Kim says:

    Oh wow. I've only just started using Excel 2010 and had no idea this even existed. It makes dynamic charts so much easier!

  15. Clare says:

    You are my Hero! I am working with PowerPivot due to the huge amount of data I have and could not use my usual tricks to get the scatter chart title to change. For some reason the CUBE function wouldn't work (who knows why, I don't have time to dig into it now) but your "dummy" solution did.
    thankyouthankyouthankyou!
    Clare

  16. Stevie D says:

    On a normal PivotTable filter, you can choose whether to allow multiple items to be selected or not. Is that possible with slicers (in Excel 2010)? I've had a look through the options and not found a way to do it yet!

    • Chandoo says:

      Hi Stevie... this is not possible with slicers.

      • Jo says:

        Just hold down control when you're choosing them...can then either click another (without control) and it will show only the new one, or click the filter with the red 'x' to revert back to all options.

        Not a limitation that can be placed on the slicer but still a potential workaround depending on your needs.

  17. Rushabh Gala says:

    Very comprehensive note on slicer. I haven't yet used ms excel 2010, but learnt Slicer tool very well

  18. Arif says:

    How should I apply Slicer in excel 2010 version, not able find options
    as directed, could you please tell me that step by step

  19. Mary Ellen says:

    I have a longitudinal line graph with the count of exams scored at each level(1-4). I need a longitudinal line graph that shows the percentage for each level. I made my pivot with the count in the field settings with a calculation of % of row total. This works great until you add a slicer fo that you can look at one level at a time. When I do this, it shows as 100% because it seems to lose the rest of the row calculations. How can I set it up to show the percent. I do not have the option of adding it to my data table. I am using straight Pivot, not PowerPivot.

  20. Carla says:

    Hi, thanks for these tips. Is it possible to link a slicer to *different data sets*? All my data sets have a "year_opened" and "month_opened" fields, and I'd like do a single filter and update everything at once. Is that possible?

  21. Rafael says:

    Hi,
    Can someone tell me how to format a date field in a slicer to tell July 2016 instead of 07/31/2016?

    Thanks in advance.

  22. blk says:

    Great post - easily explainable for non excel whiz.

  23. Artieboy says:

    Thanks for the slicers post. I'm knew to this feature so don't be to harsh on me 🙂

    In the example bar chart graph: "Quantity breakup by Customer Profession and & Product category" you get a different picture depending on which area is chosen "East, Middle, North, South, West". That part I get. But the graph itself doesn't specify which region you are in.

    Is it possible to put the filtered criteria into the Chart title. For example if I chose West, the title would read "Quantity breakup by Customer Profession and & Product category - West".

    Is that possible? Just curious. Thanks

    • Jo says:

      It is possible...I have this on a number of my reports.
      1) create a pivot table with just the column your slicer is set on
      2) assign the slicer to that pivot table
      3) create a string in cell B3 (or wherever):
      ="Quantity breakup by Customer Profession & Product Category- "&A3
      (assuming that A3 is the cell that the chosen region appears in)
      4) click (once) on the graph title, then in the formula bar type =B3
      As you change the slicers, B3 will update as will the chart title.

      Couple of tips:
      1) if you need to have a new line for the title, use CHAR(10) e.g.
      ="Quantity breakup by Customer Profession & Product Category"&CHAR(10)&A3
      (this will have the region on a new line)
      2) if multiple regions will be chosen, I've added in an IF statement
      =IF(COUNTA(A3:A10)>1,"Multiple Regions",A3)
      (I'm sure there are ways to concatenate the strings but for mine it could get up to 20 and that just gets ridiculous for the graph heading)

  24. Sumit says:

    Just Wow

  25. Teri says:

    I am trying to create a duplicate dashboard using data in one workbook and creating a new workbook to place in a shared file for my coworkers. I have created a separate worksheet in the original workbook for the new pivot charts and slicers I want to use in the new workbook/dashboard. I don't want all of the source data in the new workbook, as it is very large. I am having trouble making new slicers work. They work in the original workbook, but when I copy them to the new workbook they don't work. Am I going about this the right way or is there an easier way?

  26. mikael says:

    Very good post! Helped a lot. Keep up the good work!

  27. Anthony says:

    how can you prevent multiple selection in a slicer box? In short, in any slicer box, only one entry is allowed and not multiple entries.

  28. Sheikh Mishuk says:

    I have 2 files. (1. .xlsx 2. .xlsm)
    1 file contains all the pivot tables and charts. its also macro enabled.
    2nd file contains the source data which is a .xlsx file.

    but I am unable to run slicer on my 1st file.
    can anybody help me out?

  29. Philip Hinton says:

    chandoo.org: one of my favourite Excel sites for years.
    Slicers tutorial: excellent as usual.
    Animated gifs: sorry, but REALLY distracting!! Especially with two on the same screen. Is there any way they can be activated only when we click on them, or something?

  30. Virupaksha says:

    Hi Team,

    I have inserted a slicer to a pivot table with 4 fields...I need to add another field for the same slicer...help me with this..

  31. Candida says:

    First of all I would like to say terrific blog!
    I had a quick questio in whiich I'd like to ask if you don't
    mind. I was intereested to know how you center yourself and clear your head
    before writing. I've had a hard time clearing my mind in getting my ideas out there.
    I do enjoy writing however it just seems like the first 10 to 15 minutes are generally lost simply just tryying to figure out how
    to begin. Any recommendations oor tips? Many thanks!

  32. H says:

    Hi All

    Im trying to connect a slicer to 2 pivot tables with different sources

    Both data tables have been sorted and have duplicates

    ie

    Table 1

    Name Week FTe
    A 1 7.2
    A 2 7.3
    B 1 7.3
    B 2 7.3

    Table 2

    Name Month Fte
    A Jan 2.6
    A Feb 3.2
    A Mar 4.4
    B Jan 2.2
    B Feb 6.4
    B Mar 2.2

    etc

    I have created 2 pivot tables and have sorted it out the way i want with charts etc

    Now all i want is to connect the Name Slicer to be connected to both of those pivot tables but problem is they have duplicates and are from different tables/sources

    how can i connect/add this to a data model and connect to my name slicer?

    Im sure it maybe something simple but minds not with it

    So in short 1 to connect 1 slicer to 2 different pivots from different sources but not all pivots (There are dups in both) - as shown in the example

    Thank You

    • Chandoo says:

      Hi H
      This is how you can do it. Create a third table with all slicer options (in this case it would be Name column) with one row per unique value. Now add this table to your source list. Then link all two tables via this third table thru Data ribbon > Manage relationships feature. Finally add a slicer on this third table column and link the slicer to both pivot charts.

      Please note that you need to construct the tables and charts after data model is created.

      See this page for more explanation on how to use relationships - https://chandoo.org/wp/introduction-to-excel-2013-data-model-relationships/

  33. Cyleste says:

    Hi,

    Using Cube Value with Slicers is great. I am new to cube value, but it is so powerful. I am stuck on an issue where I want to filter on a slicer for all values except 1 and the slicer has thousands of values. I get #N/A in the results, when trying to do this. Any ideas on how to do an exception calc or how to get around this with the multi select slicer functionality?

    Thanks in advance.

    Cyleste

    • Chandoo says:

      @Cyleste... thanks for your comments and welcome to Chandoo.org. You can use DAX to calculate such things as Excel pivot tables alone cannot function like the way you want. You can use DAX formula EXCEPT() to achieve this. For example,
      =CALCULATE(SUM(data[sales]), EXCEPT(ALL(data[filter_column]), VALUES(data[filter_column]))) can tell you the sum of [sales] column in the data table by ignoring slicer selected values.

      Hope that helps.

      • Cyleste says:

        Hi Chandoo,

        Thank you for your quick reply. I am not familiar with DAX but it sounds like I won't be able to apply the calculation you provided after converting the power pivot to excel formulas via OLAP.

        Cyleste

  34. José Manuel Agundis says:

    Thanks Chandoo, I like yours tricks & always I use slicers. Regards from México.

  35. Girish says:

    Hi Chandoo,

    I have a lot of text in the slices (Pivot table). The text is not completely visible. What should I do?

    Please Help

    Thanks

  36. Chris Brown says:

    Thanks so much for this, it's brilliant! I think it's almost there - I've actually followed the steps on the example linked in my post. I just can't get it to filter properly; it just returns 0 when I add a date into Cell O2. Should I be doing it differently?

  37. ??? says:

    slicers dont work with non-admin roles in OLAP Pivot Tables

Leave a Reply