Comparing Lists of Values in Excel using Array Formulas

Share

Facebook
Twitter
LinkedIn

Last week, we had a home work on Calculating Donation Summaries using Excel Formulas. This is a good case where array formulas can help us. So today, we will learn how we can use Array Formulas to compare lists of values and calculate summaries. Towards the end of this post, you can see a video that explains the solution to Donation Summary Calculation problem.

Comparing List of Values – Different Scenarios

There are 2 scenarios when we compare lists of values.

  1. Comparing a list of values with a single value (or condition)
  2. Comparing a list of values against another list (array comparison)

Comparing a list of values with a single value (or condition):

This is the most common and easiest comparison. Examples of this are – count of all values > 20, sum of values between 5 and 23, count of employees in purchasing department etc.

We have built in formulas in Excel to help us do this easily.

Formula What it does?
COUNTIF Counts all the values in a range that meet a criteria.
Example: COUNTIF(A1:A10,”>10″)
Count of all values in A1:A10 more than 10 

Help

SUMIF Sums all the values in a range that meet a criteria
Example: SUMIF(A1:A10,”>10″,B1:B10)
Sum of all values in B1:B10 where corresponding value in A1:A10 is more than 10 

Help

COUNTIFS* Counts all the values in a range that meet multiple criterion
Example: COUNTIFS(employees, “a*”,departments, “Purchasing”)
Counts the number of employees in Purchasing department whose name starts with letter a. 

Help

SUMIFS* Sums all the values in a range that meet multiple criterion
Example: SUMIFS(salaries, employees, “a*”,departments, “Purchasing”)
Sums up the salary of employees in Purchasing department whose name starts with letter a. 

Help

SUMPRODUCT Gives the sum of product of various lists. This formulas is very robust and can be used to compare lists and check against multiple conditions
Example: SUMPRODUCT(salaries, departments=”Purchasing”, join_date>datevalue(“1-May-2009”),join_date<=datevalue(“1-May-2011”))
Sums up the salary of employees in Purchasing department who joined between 1-May-2009 and 1-May-2011. 

Help

AVERAGEIF* Average of all the values in a range that meet a criteria
Example: AVERAGEIF(A1:A10,”>10″,B1:B10)
Average of all values in B1:B10 where corresponding value in A1:A10 is more than 10
AVERAGEIFS* Average of all the values in a range that meet multiple criteria
Example: AVERAGEIFS(salaries, employees, “a*”,departments, “Purchasing”)
Average salary of employees in Purchasing department whose name starts with letter a.

* these formulas do not work in Excel 2003 or earlier versions.

Comparing a list of values with another list (array compare):

This is where it gets interesting. You have 2 lists of values, like in our last week’s problem. And you want to calculate some value, for eg. Sum of all donations where Amount Donated < Amount Pledged.
How do you go about this?

Well, this is where we use Array Formulas.

In the above case, assuming we have amount donated in lstGiven and amount pledged in lstPledged,

We can use the array formula =SUM((lstGiven)*(lstGiven<lstPledged)) to find the sum of all donations such that amount donated is less than amount pledged.
Note: You must press CTRL+SHIFT+Enter to get this formula work

How does this formula work?

  1. The formula checks for lstGiven < lstPledged and returns a bunch of TRUE, FALSE values.
  2. When you multiply this with lstGiven, Excel would convert TRUE, FALSE to 1 and 0 and then multiply.
  3. Since 0 multiplied by anything would 0, we end up with a bunch of donation values where donated amount is less than pledged amount.
  4. Once all the values are there, the SUM would just add them up.

More examples & Illustration:

Look at below image to understand how we can compare lists of values in Excel using Array formulas.

Array Formulas to Compare Lists in Excel - Examples

Solution to Donation Summary Calculation Problem:

I have made a video explaining how you can solve the last week’s homework. See it below or on our Youtube Channel.

Download the Excel Workbook for this.

Click here to download the Workbook with partial solution as shown in the video.

Click here to download the solution workbook and play with the formulas to learn more.

Share your tips on Array Formulas

Array formulas are quite powerful and robust. I use them all the time and love to learn more. So please share your tips and ideas using comments. Go!

Learn More about Excel Array Formulas:

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.

11 Responses to “Fix Incorrect Percentages with this Paste-Special Trick”

  1. Martin says:

    I've just taught yesterday to a colleague of mine how to convert amounts in local currency into another by pasting special the ROE.

    great thing to know !!!

  2. Tony Rose says:

    Chandoo - this is such a great trick and helps save time. If you don't use this shortcut, you have to take can create a formula where =(ref cell /100), copy that all the way down, covert it to a percentage and then copy/paste values to the original column. This does it all much faster. Nice job!

  3. Jody Gates says:

    I was just asking peers yesterday if anyone know if an easy way to do this, I've been editing each cell and adding a % manually vs setting the cell to Percentage for months and just finally reached my wits end. What perfect timing! Thanks, great tip!

  4. Jon S says:

    If it's just appearance you care about, another alternative is to use this custom number format:
    0"%"

    By adding the percent sign in quotes, it gets treated as text and won't do what you warned about here: "You can not just format the cells to % format either, excel shows 23 as 2300% then."

    • Steven Peters says:

      Dear Jon S. You are the reason I love the internet. 3 year old comments making my life easier.

      Thank you.

  5. Jon Peltier says:

    Here is a quicker protocol.

    Enter 10000% into the extra cell, copy this cell, select the range you need to convert to percentages, and use paste special > divide. Since the Paste > All option is selected, it not only divides by 10000% (i.e. 100), it also applies the % format to the cells being pasted on.

  6. Chandoo says:

    @Martin: That is another very good use of Divide / Multiply operations.

    @Tony, @Jody: Thank you 🙂

    @Jon S: Good one...

    @Jon... now why didnt I think of that.. Excellent

  7. sajith says:

    Thank You so much. it is really helped me.

  8. Winnie says:

    Big help...Thanks

  9. Chris Fry says:

    Thanks. That really saved me a lot of time!

  10. Texas says:

    Is Show Formulas is turned on in the Formula Ribbon, it will stay in decimal form until that is turned off. Drove me batty for an hour until I just figured it out.

Leave a Reply