How to use XLOOKUP with two sheets?

Share

Facebook
Twitter
LinkedIn

Learn how to use Excel XLOOKUP function with two sheets in this step-by-step tutorial.

xlookup across two sheets

Why you may want to use XLOOKUP with two sheets?

If you have data in two places (sheets or Excel workbooks) like depicted above, you may want to use XLOOKUP to combine data from both places to get the full picture. For example,

  • Student list in sheet1, course price list in sheet2, you want to know the price of courses against student names in sheet1
  • Invoice list in sheet1, payment list in sheet 2, you need to know which invoices are paid up (reconciliation)
  • Equipment list in sheet1, inspection details in sheet2, you want to know when the last inspection date is for each equipment

What you need?

  • You need two sheets of data.
  • or if data is in two separate Excel files, then open both files.
  • If you need a sample data file, grab my free xlookup two sheets template.

XLOOKUP with two sheets (step-by-step instructions)

Step 1: Identify common column between both sheets

xlookup two sheets - example scenario

For example, in the above scenario, “Fee” is the common column between sheet 1 (student list) and sheet 2 (course list).

What if I have more than 1 common column?

I will explain the process for modifying XLOOKUP to work with multiple columns further down the page. Read on.

Step 2: Write the XLOOKUP formula

Go to the sheet where you want to get the data from “other” sheet and write the XLOOKUP function using the pattern below.

=XLOOKUP(
  all cells in first sheet, 
  common column in second sheet,
  column you want in second sheet,
  optional output for missing values
  )

for example, in our students & fees case, we will use the below XLOOKUP function.

=XLOOKUP(C4:C43,
         Courses!B4:B15,
         Courses!D4:D15
         )
how to write xlookup formula to get fee data from courses sheet to students sheet

As demonstrated above, xlookup can automatically spill values for all the rows based on the common column you have specified. No need to individually write or drag the formulas. You also don’t need to “lock” your references with this style of formulas. Learn more about the spill functionality and dynamic array behavior of Excel here.

Using Tables? Don’t select the full column in sheet 1

If you are using Excel Tables for your data, just select the current cell in first row but select common column and column you want in sheet 2. Excel will automatically fill the formula down for you.

For example, the same formula with tables could look like this:

=XLOOKUP([@Course Name], courses[name], courses[fee])

What if I have more than one common column? (XLOOKUP multiple criteria)

Let’s say you have different fee per course based on the the student’s location (ex: In state is $600, out of state is $900). Something like this:

more than one column to check

In such cases, your student’s data will also have both “course code” and “student type” columns. something like this:

xlookup needs to check both course code and student type columns

As you can see, our XLOOKUP needs to check both of these columns to figure out the correct fee per row.


XLOOKUP with two sheets, multiple columns (step-by-step instructions)

Step 1: Identify common columns between sheets

In our case, the common columns are,

  • Course Code (column C in sheet 1, column B sheet 2)
  • Student Type (column D in sheet 1, column C in sheet 2)
xlookup two sheets, but  two columns to check!

Step 2: Write the multi-criteria XLOOKUP

Instead of looking up for a specific column value, we start the xlookup with 1 and construct a “boolean” checking array. The formula looks like this:

=XLOOKUP(1,
('Courses NEW'!$B$4:$B$27=Students!C4)*('Courses NEW'!$C$4:$C$27=Students!D4),
'Courses NEW'!$D$4:$D$27)

Formula Explanation:

  • We start the lookup with 1. I will explain what this is in a second.
  • The lookup array has multiple parts, one per common column. As we have two columns to match (course code and student type), we have two parts here.
    • Part1: (‘Courses NEW’!$B$4:$B$27=Students!C4) checks which courses in column B of sheet 2 (course code column) match with the course of current student record (column C of sheet 1)
    • Part 2: (‘Courses NEW’!$C$4:$C$27=Students!D4) does the same, but for student type
    • Part 1 * Part 2: when we multiply both of these checks, we end up with an array of 0s and 1s. for example, it will look like this: {0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0}
  • The return array is just the fee column of sheet 2
  • As we are looking for 1, xlookup matches the 1 in Part 1*Part 2 and returns the corresponding fee.

Related: learn more about what and how of this boolean multiplication logic in Excel

Watch – XLOOKUP with multiple criteria explained quickly

Generic Formula Pattern for any number of common columns with XLOOKUP

Use this pattern and adjust everything as per your data to match any number of common columns

=XLOOKUP(
    1,
      (COLUMN 1 in second sheet = value 1 first sheet) * 
      (COLUMN 2 in second sheet = value 2 first sheet) * 
      (COLUMN 3 in second sheet = value 3 first sheet) * 
      (COLUMN 4 in second sheet = value 4 first sheet),
    COLUMN YOU WANT TO GET IN SECOND SHEET,
    OPTIONAL value for missing cases
  )
      

What if I have data in two separate workbooks (Excel files) instead of sheets

The process is exactly same as two sheets. You just need to keep both files OPEN for the XLOOKUP to work. If you close the second file (one with fees in this example), the formula in first workbook works as long as you don’t touch it or recalculate the workbook (F9). At that point it will throw an error and ask you to open the file.

Alternatives to XLOOKUP for combining data from two places

While xlookup is great, you can also use below alternatives to get data from another place.

My preferences:

For simple scenarios and quick analysis, I prefer using XLOOKUP or VLOOKUP to quickly combine data like this.

But if the data is coming from two separate files (workbooks or even sharepoint lists etc.), then I use Power Query. It gives me more flexibility and choices. Refer to my Power Query tutorial page for more spicy examples on what this powerful feature can do for you.

Bonus: XLOOKUP with two sheets: Sample workbook

If you need a hand with the formulas explained above, download my free XLOOKUP two sheets template and refer to the formulas in columns E & F. Let me know if you have any questions by leaving a comment.

Related Resources:

To learn more about the important Excel functions and concepts, refer to below articles & videos:

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.

15 Responses to “Make a Bubble Chart in Excel [15 second tutorial]”

  1. Jeff Weir says:

    Noooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo!!

    • Chandoo says:

      Whyyyyyyyy?

      The idea is to tell how to make a bubble chart. I got an e-mail from a reader recently asking how the scatter bubble is made. So I thought a 15 second tutorial would be a good idea to show this.

  2. Jeff Weir says:

    Did that email go "Dear Chandoo, I know that you scorn bubble charts, but if I don't do one in Excel for my boss then he'll fire my sorry ass, and my children will have to be sold for medical experiments in order for me to be able to afford the upgrade path to Excel 2010"?

    If so, fair enough...it's all in the greater good 😉

  3. sanwijay says:

    Chandoo,

    I am using excel 2003 and it is not working. The x axis is not the one that I enter in x axis column. Please help! Thanks.

  4. sanwijay says:

    Sorry, after few attempts, I managed to get the right result. I shouldn't select the title (header) of the table and select only the data to produce the right bubble chart.

  5. Precious Roy says:

    What's wrong with bubble charts? Is there a better method for displaying scatter plots with lots of overlapping data points? Don't tell me you'd rather jitter!

  6. Chandoo says:

    @Sanwijay: Cool.

    @Precious Roy: There is nothing wrong with bubble charts. Infact, it is the only way to show 3 dimensional data (x,y and sizes) without confusing your audience. Jeff is worried that people might misuse the chart. As with any chart, bubbles also have a place and time for using them.

    I recommend using bubble charts to show relative performance various products in several regions and similar situations.

    Also, human eye is notorious in wrongly estimating the bubble sizes (as we have to measure areas). See http://chandoo.org/wp/2009/07/28/charting-lessons-from-optical-illusions/

    We can partially improve bubble charts by adding data labels, but if you have too many bubbles, the labels will clutter the chart and make it look busy.

  7. KW says:

    I can't seem to find a way to plot more than ten bubbles on a chart and need to know how to add more

  8. Chandoo says:

    @KW.. why would such a thing happen. I am sure you can add more bubbles that that. Can you tell us exactly what you are doing...

  9. Michiel says:

    Example table:
    A B C (size)
    Me: 25 30 15%
    Him: 30 22 11%
    Her: 12 30 20%

    I am trying to make a bubble chart where the Y axis is A, the X axis is B, and the size of the bubble is C. There should be only 3 bubbles. I keep ending up with six (with the labels being only "Me" and "Her"). My goal is to have three bubbles, one representing each person. Clearly I am doing something wrong. Can you help explain...?

  10. Priya says:

    Hi,
    I wanted to add data labels to the bubbles. Each bubble represents a different company name. Excel allows me to add the size, legend, x axis values and y axis values. How do I add instead- Company A, B, C, D for the bubbles?

    • Mai huong says:

      youon you have to choice every data for every company..
      ex:create bubble for A company,after that click right> add data label> adjust data labels :format data labels and choose : series name.
      i hop u will succeed .

  11. [...] we create a bubble chart with 2 bubbles. 1 for the actual mustache & 1 for target [...]

  12. IT says:

    If we want bubble size to be controlled by one column, but the bubble labels to be controlled by another column, how can this be achieved?

  13. Nicola says:

    many thanks!!!!

Leave a Reply