How to compare two columns in Excel for matches and differences

Comparing columns in Excel is something that we all do once in a while. Microsoft Excel offers a number of options to compare and match data, but most of them focus on searching in one column. In this tutorial, we will explore several techniques to compare two columns in Excel and find matches and differences between them.

How to compare 2 columns in Excel row-by-row

When you do data analysis in Excel, one of the most frequent tasks is comparing data in each individual row. This task can be done by using the IF function, as demonstrated in the following examples.

Example 1. Compare two columns for matches or differences in the same row

To compare two columns in Excel row-by-row, write a usual IF formula that compares the first two cells. Enter the formula in some other column in the same row, and then copy it down to other cells by dragging the fill handle (a small square in the bottom-right corner of the selected cell). As you do this, the cursor changes to the plus sign: Copy the formula down to other cells to compare two columns in Excel.

Formula for matches

To find cells within the same row having the same content, A2 and B2 in this example, the formula is as follows:

=IF(A2=B2,"Match","")

Formula for differences

To find cells in the same row with different values, simply replace the equals sign with the non-equality sign (<>):

=IF(A2<>B2,"No match","")

Matches and differences

And of course, nothing prevents you from finding both matches and differences with a single formula:

=IF(A2=B2,"Match","No match")

Or

=IF(A2<>B2,"No match","Match")

The result may look similar to this: A formula to compare 2 columns for matches and differences in each row.

As you see, the formula handles numbers, dates, times and text strings equally well.

Tip. You can also compare two columns row-by-row using Excel Advanced Filter. Here is an example showing how to filter matches and differences between 2 columns.

Example 2. Compare two lists for case-sensitive matches in the same row

As you have probably noticed, the formulas from the previous example ignore case when comparing text values, as in row 10 in the screenshot above. If you want to find case-sensitive matches between 2 columns in each row, then use the EXACT function:

=IF(EXACT(A2, B2), "Match", "") Comparing two lists for case-sensitive matches in the same row.

To find case-sensitive differences in the same row, enter the corresponding text ("Unique" in this example) in the 3rd argument of the IF function, e.g.:

=IF(EXACT(A2, B2), "Match", "Unique")

Compare multiple columns for matches in the same row

In your Excel worksheets, multiple columns can be compared based on the following criteria:

  • Find rows with the same values in all columns (Example 1)
  • Find rows with the same values in any 2 columns (Example 2)

Example 1. Find matches in all cells within the same row

If your table has three or more columns and you want to find rows that have the same values in all cells, an IF formula with an AND statement will work a treat:

=IF(AND(A2=B2, A2=C2), "Full match", "") Finding rows that have the same values in all columns.

If your table has a lot of columns, a more elegant solution would be using the COUNTIF function:

=IF(COUNTIF($A2:$E2, $A2)=5, "Full match", "")

Where 5 is the number of columns you are comparing.

Example 2. Find matches in any two cells in the same row

If you are looking for a way to compare columns for any two or more cells with the same values within the same row, use an IF formula with an OR statement:

=IF(OR(A2=B2, B2=C2, A2=C2), "Match", "") Finding matches in any two cells in the same row.

In case there are many columns to compare, your OR statement may grow too big in size. In this case, a better solution would be adding up several COUNTIF functions. The first COUNTIF counts how many columns have the same value as in the 1st column, the second COUNTIF counts how many of the remaining columns are equal to the 2nd column, and so on. If the count is 0, the formula returns "Unique", "Match" otherwise. For example:

=IF(COUNTIF(B2:D2,A2)+COUNTIF(C2:D2,B2)+(C2=D2)=0,"Unique","Match") Compare several columns and find matches in any two cells in the same row.

How to compare two columns in Excel for matches and differences

Suppose you have 2 lists of data in Excel, and you want to find all values (numbers, dates or text strings) which are in column A but not in column B.

For this, you can embed the COUNTIF($B:$B, $A2)=0 function in IF's logical test and check if it returns zero (no match is found) or any other number (at least 1 match is found).

For instance, the following IF/COUNTIF formula searches across the entire column B for the value in cell A2. If no match is found, the formula returns "No match in B", an empty string otherwise:

=IF(COUNTIF($B:$B, $A2)=0, "No match in B", "") Compare two columns in Excel for matches.

Tip. If your table has a fixed number of rows, you can specify a certain range (e.g. $B2:$B10) rather than the entire column ($B:$B) for the formula to work faster on large data sets.

The same result can be achieved by using an IF formula with the embedded ISERROR and MATCH functions:

=IF(ISERROR(MATCH($A2,$B$2:$B$10,0)),"No match in B","")

Or, by using the following array formula (remember to press Ctrl + Shift + Enter to enter it correctly):

=IF(SUM(--($B$2:$B$10=$A2))=0, " No match in B", "")

If you want a single formula to identify both matches (duplicates) and differences (unique values), put some text for matches in the empty double quotes ("") in any of the above formulas. For example:

=IF(COUNTIF($B:$B, $A2)=0, "No match in B", "Match in B")

How to compare two lists in Excel and pull matches

Sometimes you may need not only match two columns in two different tables, but also pull matching entries from the lookup table. Microsoft Excel provides a special function for this - the VLOOKUP function. As an alternative, you can use a more powerful and versatile INDEX MATCH formula. The users of Excel 2021 and Excel 365, can accomplish the task with the XLOOKUP function.

For example, the following formulas compare the product names in columns D against the names in column A and pull a corresponding sales figure from column B if a match is found, otherwise the #N/A error is returned.

=VLOOKUP(D2, $A$2:$B$6, 2, FALSE)

=INDEX($B$2:$B$6, MATCH($D2, $A$2:$A$6, 0))

=XLOOKUP(D2, $A$2:$A$6, $B$2:$B$6) Comparing two lists and pulling matching data.

For more information, please see How to compare two columns using VLOOKUP.

If you don't feel very comfortable with formulas, you can have the job done using a fast and intuitive solution - Merge Tables Wizard.

Compare two lists and highlight matches and differences

When you compare columns in Excel, you may want to "visualize" the items that are present in one column but missing in the other. You can shade such cells in any color of your choosing by using the Excel Conditional Formatting feature and the following examples demonstrate the detailed steps.

Example 1. Highlight matches and differences in each row

To compare two columns and Excel and highlight cells in column A that have identical entries in column B in the same row, do the following:

  • Select the cells you want to highlight (you can select cells within one column or in several columns if you want to color entire rows).
  • Click Conditional formatting > New Rule… > Use a formula to determine which cells to format.
  • Create a rule with a simple formula like =$B2=$A2 (assuming that row 2 is the first row with data, not including the column header). Please double check that you use a relative row reference (without the $ sign) like in the formula above.
A conditional formatting rule to highlight matches in each row.

To highlight differences between column A and B, create a rule with this formula:

=$B2<>$A2 A conditional formatting rule to highlight differences in each row.

If you are new to Excel conditional formatting, please see How to create a formula-based conditional formatting rule for step-by-step instructions.

Example 2. Highlight unique entries in each list

Whenever you are comparing two lists in Excel, there are 3 item types that you can highlight:

  • Items that are only in the 1st list (unique)
  • Items that are only in the 2nd list (unique)
  • Items that are in both lists (duplicates) - demonstrated in the next example.

This example demonstrates how to color the items that are only in one list.

Supposing your List 1 is in column A (A2:A6) and List 2 in column C (C2:C5). You create the conditional formatting rules with the following formulas:

Highlight unique values in List 1 (column A):

=COUNTIF($C$2:$C$5, $A2)=0

Highlight unique values in List 2 (column C):

=COUNTIF($A$2:$A$6, $C2)=0

And get the following result: Comparing 2 lists and highlighting unique entries in each list.

Example 3. Highlight matches (duplicates) between 2 columns

If you closely followed the previous example, you won't have difficulties adjusting the COUNTIF formulas so that they find the matches rather than differences. All you have to do is to set the count greater than zero: Highlighting matches between 2 columns.

Highlight matches in List 1 (column A):

=COUNTIF($C$2:$C$5, $A2)>0

Highlight matches in List 2 (column C):

=COUNTIF($A$2:$A$6, $C2)>0

Highlight row differences and matches in multiple columns

When comparing values in several columns row-by-row, the quickest way to highlight matches is creating a conditional formatting rule, and the fastest way to shade differences is embracing the Go To Special feature, as demonstrated in the following examples.

Example 1. Compare multiple columns and highlight row matches

To highlight rows that have identical values in all columns, create a conditional formatting rule based on one of the following formulas:

=AND($A2=$B2, $A2=$C2)

or

=COUNTIF($A2:$C2, $A2)=3

Where A2, B2 and C2 are the top-most cells and 3 is the number of columns to compare. Highlighting rows that have the same values in several columns.

Of course, neither AND nor COUNTIF formula is limited to comparing only 3 columns, you can use similar formulas to highlight rows with the same values in 4, 5, 6 or more columns.

Example 2. Compare multiple columns and highlight row differences

To quickly highlight cells with different values in each individual row, you can use Excel's Go To Special feature.

  1. Select the range of cells you want to compare. In this example, I've selected cells A2 to C8. Select the range of cells you want to compare.

    By default, the top-most cell of the selected range is the active cell, and the cells from the other selected columns in the same row will be compared to that cell. As you can see in the screenshot above, the active cell is white while all other cells of the selected range are highlighted. In this example, the active cell is A2, so the comparison column is column A.

    To change the comparison column, use either the Tab key to navigate through selected cells from left to right, or the Enter key to move from top to bottom.

    Tip. To select non-adjacent columns, select the first column, press and hold Ctrl, and then select the other columns. The active cell will be in the last column (or in the last block of adjacent columns). To change the comparison column, use the Tab or Enter key as described above.

  2. On the Home tab, go to Editing group, and click Find & Select > Go To Special… Then select Row differences and click the OK button. Select Row differences and click the OK button.
  3. The cells whose values are different from the comparison cell in each row are colored. If you want to shade the highlighted cells in some color, simply click the Fill Color icon on the ribbon and select the color of your choosing. To shade the highlighted cells in some color, click the Fill Color icon on the ribbon.

How to compare two cells in Excel

In fact, comparing 2 cells is a particular case of comparing two columns in Excel row-by-row except that you don't have to copy the formulas down to other cells in the column.

For example, to compare cells A1 and C1, you can use the following formulas.

For matches:

=IF(A1=C1, "Match", "")

For differences:

=IF(A1<>C1, "Difference", "")

To learn a few other ways to compare cells in Excel, please see:

Formula-free way to compare two columns / lists in Excel

Now that you know Excel's offerings for comparing and matching columns, let me show you our own solution for this task. This tool is named Compare Two Tables and it is included in our Ultimate Suite.

The add-in can compare two tables or lists by any number of columns and both identify matches/differences (as we did with formulas) and highlight them (as we did with conditional formatting).

For the purpose of this article, we'll be comparing the following 2 lists to find common values that are present in both. Two lists to be compared.

To compare two lists, here are the steps you need to follow:

  1. Start with clicking the Compare Tables button on the Ablebits Data tab. Compare Tables tool.
  2. Select the first column/list and click Next. In terms of the add-in, this is your Table 1. Select the first column or list to compare.
  3. Select the second column/list and click Next. In terms of the add-in, it is your Table 2, and it can reside in the same or different worksheet or even in another workbook. Select the second column to compare.
  4. Choose what kind of data to look for:
    • Duplicate values (matches) - the items that exist in both lists.
    • Unique values (differences) - the items that are present in list 1, but not in list 2.

    Since our aim is to find matches, we select the first option and click Next. Choose whether to search for matches or differences.

  5. This is the key step where you select the columns for comparison. In our case, the choice is obvious as we are only comparing 2 columns: 2000 Winners against 2021 Winners. In bigger tables, you can select several column pairs to compare by. Select the columns for comparison.
  6. In the final step, you choose how to deal with the found items and click Finish.

    A few different options are available here. For our purposes, these two are most useful:

    • Highlight with color - shades matches or differences in the selected color (like Excel conditional formatting does).
    • Identify in the Status column - inserts the Status column with the "Duplicate" or "Unique" labels (like IF formulas do).

For this example, I've decided to highlight duplicates in the following color: Highlighting duplicates.

And in a moment, got the following result: The matches are colored.

With the Status column, the result would look as follows: The matches are identified.

Tip. If the lists you are comparing are in different worksheets or workbooks, it might be helpful to view Excel sheets side by side.

This is how you compare columns in Excel for matches (duplicates) and differences (unique values). If you are interested to try this tool, you are welcome to download an evaluation version using the below link.

I thank you for reading and encourage you to check out other helpful tutorials that we have :)

Available downloads

Compare Excel Lists - examples (.xlsx file)
Ultimate Suite - trial version (.exe file)

550 comments

  1. Product Id Current profit Margin Last yr profit margin
    123 51% 49%
    126 53% 50%
    129 55% 51%
    132 57% 52%
    135 59% 53%

    Mark red color for the cells where last year profit is greater than current year profit and color pink for the product id which is red cells

    have to find using conditional formatting

  2. I have two column that,the value to be matched with the another one another`s criteria column. First column contains exact number and second column contains number with description.

    Suggest me further..

  3. Hello,

    Very useful, but I need help comparing two columns. I want it to be able to tell that google inc is the same company as Google ABC, or that Brown university is the same as University, Brown. It would be helfpul if the matches are highlighted. Thanks!

    EX:
    Column 1 Column 2
    google inc. Capital one
    Brown University University, Brown
    Visa Google ABC

  4. If in one column there are name entries with negative and partly failing values associated with them and in another column there are name entries with positive yet yet highly conservative values associated with them, how do I sort the dump the negatives, eliminate the failing and merge into a single positive highly conservative list so that I can quickly get to the golf club?

  5. I have a sheet in which I am trying to find out that a particluar cell value will happen on which date. I have a column where there are equal installments of 2 Lakhs and there is column beside it containing dates starts from 01.04.2017 and ends on 01.01.2024 for those installments. Now, if for the first installment customer pays only 50,000 till 01.10.2017 then how can I find using the formula that from which date the overdue is coming and how much?

  6. Hi,

    Below is a sample of the data I have. I want to match the data in Column A and B. If column B is not matching column A, I want to add a row and copy the data from Column A to B. For example, "4" is missing in column B, so I want to add a space and add "4" to column B so it will match column A. I have a large set of data, so I am trying to find a different way instead of checking for duplicate values in the two columns and manually adding one row at a time. Thanks!

    A B C D

    3 3 Y B
    4 5 G B
    5 6 B G
    6 8 P G
    7 9 Y P
    8 11 G Y
    9 12 B Y
    10
    11
    12
    11
    12

  7. How to Salve This Prablem

    KS IN_Kirana Stores KSN Kirana Store New
    KS IN_Kirana Stores KSN Kirana Store New
    KS IN_Kirana Stores KSN Kirana Store New
    PS IN_Pan Shop PSA Paan Store
    PS IN_Pan Shop PSA Paan Store
    KS IN_Kirana Stores CSA Kirana Store New
    CS IN_Kirana Stores KSN Kirana Store New
    KS IN_Kirana Stores KSN Kirana Store New
    KS IN_Kirana Stores KSN Kirana Store New
    KS IN_Kirana Stores KSN Kirana Store New
    KS IN_Kirana Stores KSN Kirana Store New
    PS IN_Pan Shop KSN Paan Store
    CS IN_Cosmetic Store CSA Cosmetic Store

  8. Hi Meli,

    As i can see it's time sheet of employee. I understand your query. But without sample sheet i am unable to put formula here. so share any short sample sheet fot add formula.

    • In Time Out Time In Time Out Time
      11:00:00 AM 8:30:00 PM 10:50:00 AM 8:40:00 PM = PRESENT

      11:00:00 AM 8:30:00 PM - - = Single Punch (This should be absent) Absent

      11:00:00 AM 8:30:00 PM 11:30:00 AM 8:35:00 PM = LATE

      11:00:00 AM 8:30:00 PM 11:00:00 AM 7:00:00 PM = EARLY

      11:00:00 AM 8:30:00 PM 11:30:00 AM 5:35:00 PM = LATE/EARLY

      11:00:00 AM 8:30:00 PM 8:45:00 PM - = Single Punch Absent (This should be SP)

      11:00:00 AM 8:30:00 PM - - = Single Punch Absent

  9. Hi, I need help with a formula.

    The Formula for blank cell was very helpful Thanks.

    I have two formula with is correct answer, i combined the formula but there is error.

    Formula 1 -
    IF(OR(C3="",D3=""),"Single Punch",IF(AND(C3>A3,D3>=B3),"LATE",IF(AND(C3>A3,D3<B3),"LATE/EARLY",IF(AND(C3<=A3,D3<B3),"EARLY","PRESENT"))))

    Formula 2 -
    IF(AND(IF(AND(NOT(ISBLANK(C3)),NOT(ISBLANK(D3))), C3=D3, TRUE), IF(AND(NOT(ISBLANK(C3)),NOT(ISBLANK(D3))), C3=D3, TRUE), IF(AND(NOT(ISBLANK(D3)),NOT(ISBLANK(C3))), D3=C3, TRUE)), "Absent", "-")

    Would you Please help me find solution.

    Actual Time Log Time Remarks
    In Time Out Time In Time Out Time
    11:00:00 AM 8:30:00 PM 10:50:00 AM 8:40:00 PM PRESENT -
    11:00:00 AM 8:30:00 PM Single Punch (This should be absent) Absent
    11:00:00 AM 8:30:00 PM 11:30:00 AM 8:35:00 PM LATE -
    11:00:00 AM 8:30:00 PM 11:00:00 AM 7:00:00 PM EARLY -
    11:00:00 AM 8:30:00 PM 11:30:00 AM 5:35:00 PM LATE/EARLY -
    11:00:00 AM 8:30:00 PM 8:45:00 PM Single Punch Absent (This should be SP)
    11:00:00 AM 8:30:00 PM Single Punch Absent

    Please help

  10. Your page is excellent; your team is very helpful. I'm struggling with an issue. I have one sheet where I would like to highlight only the rows where values duplicated in the first column where the there are differing values in the second column. Duplicates are allowed in the first column. Duplicate values are allowed in the second column, also. However, duplicated values in the first column should always be paired with the same value in the second column. If not, then highlight all rows where first column contains the same duplicated value.

    Thank you.

    Col-A Col-B Format
    1 C Highlight Row
    1 C Highlight Row
    1 D Highlight Row
    2 A No Highlight
    2 A No Highlight
    3 E No Highlight
    4 C No Highlight
    5 A Highlight Row
    5 F Highlight Row

  11. The spread sheet contain two column. In first column there is only the level i.e., Block, GP and Village and in another there is name contain of the respective Block, GP and Village. Let me know how I can manage the sheet that looks like in this manner as follows

    Block GP Village
    Block Name GP Name Village Name
    (if there is 10 village then it is shown in row wise)
    GP Name Village Name

  12. Not understand the question dear.

    • Scenario1 :

      Check text "abc.AD" in sheet one, and return the next two cell values in sheet two.
      Note: The unique text is not in same column.

      Sheet 1 :
      Col10 Col11 Col13 Col14 col15 abc.AD Test NOP
      abc.AD Ext NOP
      abc.AD Int NOP
      Let me know if this helps

  13. Hello There, i am kind of stuck with manipulating the excel worksheets.

    Scenario : Compare the cell text in two excel and replace range of value in sheet two with Values in Sheet one. Any guess how can we achieve this ?

    Scenario : Wanted to Pull the Values from Sheet one With all the Cells containing abc*(text)in sheet 1 and Copy the same Text and adjacent 3 Values from each row.

    Sheet 1 :

    row/col Col1 col2 col3 col4
    row1 123 abcde ghk 143

    Sheet 2 :

    row /col Col1 col2 col3 col4 col5
    row1 abcde ghk c143

  14. Hello There, i am kind of stuck with manipulating the excel worksheets.

    Scenario : Compare the cell text in two excel and replace range of value in sheet two with Values in Sheet one. Any guess how can we achieve this ?

    Scenario : Wanted to Pull the Values from Sheet one With all the Cells containing abc*(text)in sheet 1 and Copy the same Text and adjacent 3 Values from each row.

    Sheet 1 :

    row/col Col1 col2 col3 col4
    row1 123 abcde ghk 143

    Sheet 2 :

    row /col Col1

  15. Hi All,

    Is it possible to compare my example below ? i need to compare column a + b in column c + d . my problem is on column a there is same values . please help me to create formulas if possible

    column a column b column c column d
    64571 75 64351 72.1
    64351 72.1 64571 75
    64571 73 64571 73

  16. I'm trying to pull information from one spreadsheet into another, where the combination of two cells of data in each spreadsheet match exactly.
    Each spreadsheet contains two columns that contain the exact same data:
    Spd 1 - Column D> Work Order
    Spd 1 - Column M> Contract Unit Name

    Spd 2 - Column I> Work Order
    Spd 2 - Column Q> Contract Unit Name

    Spd 2 - Col VInvoiced Amt

    So where Spd 1, Col D and Col M = Spd Col I and Col Q, Import the value in Col V into Spd 1 Col O (Invoiced Amt)

    Data sample:
    Spd 1:
    Work Order Contract Unit Name
    E.724292.C.03 NRE-ROW AGENT BEA
    E.724292.C.03 NRE-ROW AGENT I
    E.731518.C.17 NRE-EXISTING RIGHTS LEVEL I
    E.731518.C.17 NRE-EXISTING RIGHTS LEVEL II
    E.732518.C.17 NRE-PROJECT COORDINATOR
    E.732518.C.17 NRE-TITLE SEARCH I

    Spd 2:
    Work Order Contract Unit Name Invoiced Amt.
    E.724292.C.03 NRE-ROW AGENT BEA 100.00
    E.724292.C.03 NRE-ROW AGENT I 75.00
    E.731518.C.17 NRE-EXISTING RIGHTS LEVEL I 125.00
    E.731518.C.17 NRE-EXISTING RIGHTS LEVEL II 175.00
    E.732518.C.17 NRE-PROJECT COORDINATOR 95.00
    E.732518.C.17 NRE-TITLE SEARCH I 200.00

    Do I use MATCH and INDEX and what would my formula look like?

  17. Thanks so much for this TA; this just saved me a LOT of time!

  18. Need help,
    I'd like to be able to compare two cells with unique strings
    Ex. A1 = xyz0_ok_hmu1-ty
    B1 = ok1_ty
    I want it to be able to recognize that it is similar to a minimum of 2 ordered letter matches and be highlighted as "similar". If it is able to ignore multiple delimiters, that would be cool too.

    • btw, the strings are a bunch of acronyms that doesn't make sense, and people have their own way of writing it therefore there are a lot of differences and minimal similarities.

  19. I have a spreadsheet with over 100000 service name entries, however the service name can be named slightly different on several rows. I want to know if there is a formula which can highlight any mis matches in column B And C. For example the service is APERTURE but I can be known as APERTURE-CONT or APERTURE-UAT, however the owners name is different. I don't fancy going through all 10000 lines so was hoping there may be a formula that can highlight this
    SERVICE Owner First Name Owner Last Name
    APERTURE JOE BLOGGS
    APERTURE-CONT JOE BLOGGS
    APERTURE-UAT DERREN YOUNG

  20. Hello,

    I need assistance with this. I want to compare values of 2 columns. I want a visual marker that will highlight (or mark as a duplicate) as long as any value of one column is contained in the other column.

Post a comment



Thank you for your comment!
When posting a question, please be very clear and concise. This will help us provide a quick and relevant solution to
your query. We cannot guarantee that we will answer every question, but we'll do our best :)