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:


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")


=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.

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)


=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 How to compare strings in Excel.

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.

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 (.zip file)

You may also be interested in

443 comments to "How to compare two columns in Excel for matches and differences"

  1. Navin Adhikari says:

    Hello there!
    I have a sheet which contains code and product type as shown below.

    Code P.T.
    1.01 BCF
    1.01 BCF
    2.05 BCD
    2.03 BCF
    2.03 BCD

    I want to check which individual code have two or more similar product types or set of some specific product types, how can I do that. Also, Thanks in Advance.

  2. Vivek Pardeshi says:

    I have 30 days sheet. I just want to confirm if the same Name is repeated under the same cell like in J2. Is there any shortcut or formula to do the same?
    I tried this but not working


    • Vivek Pardeshi says:

      It's working with this.
      =IF(AND('1'!J1='2'!J1,'3'!J1='4'!J1,'5'!J1='6'!J1,'7'!J1='8'!J1,'9'!J1='10'!J1,'11'!J1='12'!J1,'13'!J1='14'!J1,'15'!J1='16'!J1,'17'!J1='18'!J1,'19'!J1='20'!J1,'21'!J1='22'!J1,'23'!J1='24'!J1,'25'!J1='26'!J1,'27'!J1='28'!J1,'29'!J1='30'!J1,'30'!J1='31'!J1),"Match", "")

  3. ANN says:

    In my excel sheet, Column A is having names, Column B is having a Country name, Column C is having phone numbers, Column D is having a subject list and Column E is having status (Active or Inactive). How

    Can I create data with name, country, and status?

    I have to display the active students' names while I select the country.
    eg. If I select 'India', active students in India have to be displayed.

  4. AYOUB says:


    I need to know if I can compare between two list columns and see the difference ( misses and similarities in between) the issue is that the data is not on the same order between the two columns but they are all the same type of data.

    Could you hap please.
    Sincerely yours.

  5. Gisela Rathbone says:

    Hello. I need to compare two sets of numerical data (that have multiple equal entries) for differences, ie, if an amount may appear in one column four times, but only three times in the other column, or not at all. I need to see those differences. What would be the quickest way?

  6. Luke White says:

    I am trying to use the example under the section 'Compare two lists and highlight matches and differences' (Example 3. Highlight matches (duplicates) between 2 columns). Whilst i can get this to work okay, i was wondering if there was a way where if in list 1 there were 2 cells with the same value which match with a single cell in list 2, if it would be possible to only highlight one of the cells in list 1 rather than both, essentially leaving the other blank as it would not match any remaining numbers.

    For Example:

    List 1 List 2
    10 10
    10 20
    30 30

    In the above example I would want the first 10 in list 1 to match the 10 in list 2, and therefore highlight, leaving the second 10 in list 1 not highlighted. The 20 would not be highlighted of course, and the 30's would be highlighted as there is a straightforward match.

    Hopefully you can assist!

  7. jaison philip says:

    Hi how do i find out the total combinations of several numbers in a given column will be the numbers mentioned in another column ?

    Thanks in advance

  8. Paul Richter says:

    Hi. I have three columns of numerical data. Start score. Projected score. End Score. I want to highlight the growth or deficiencies between the columns. What would the formula be for something like that?

  9. Jared says:

    I have two excel sheets: base stock values for parts, and how many parts are at a specific location. All parts have an assigned part number. Each sheet has three columns: part number(column a), description (column b), and a numeric value (column c). I need to compare the sheets based on part numbers and return the difference; how many of a part is needed to make base stock. Vlookup got me close, but the main issue is some parts have multiple part numbers and I'm not sure how to account for that. I need the parts with multiple part numbers to be grouped up and only return one value/difference for that group. Hope that makes sense. Have a slight feeling this has to be done in vba.

    Thanks for the help

  10. Mohammad says:

    I have 8 columns. A, B, C, D, E, F, G, H.
    I have to find a match if Column A range value matches Column D range and Column B range value matches Column E value. e.g. A1...An = D1..Dn AND B1..Bn = E1..En then True else False.


  11. Lobna says:

    Hey Alexander, quick question I have two sheets both have names of students and their ID's. The issue is some names in one sheet are not present in the other so sheet 1 has names sheet 2 doesn't have and vice versa.

    Is there a way to maybe compare both data sets and get the differences? There has to be an easier way instead of manually going through each and every name on both sheets seeing the differences.

  12. Jamis says:

    How do I compare the numbers in column A to column B? There are 139 numbers listed in column A and I want to see if any of those numbers are in column B, which has 2399 numbers listed in it. What is the formula to do so?

  13. Rick says:

    Hi - thank you for the content.

    If I have a column containing duplicates and another column containing duplicates and non-duplicates in relation to the first column (but different values) - how do I find entries in the second column that are not duplicated in relation to the first?



    10637712PW (dup)
    10637712PW (dup)
    10968118P7 (dup)
    10968118P7 (dup)


    HomeCon (matches dup)
    HomeCon (matches dup)
    TP (does not match dup)
    Comp (does not match dup)

    So in the above example I am aware 10637712PW is a duplicate. I need to also be aware the Col 2 has same values against that duplicate, eg HomeCon.

    I am also aware 10968118P7 is a duplicate and need to be aware that Col 2 has two different values against the duplicate, eg. TP and Comp.

    Please help?

      • tvereb says:

        I figured out a way to solve this. Add two more columns, and in these, assign a number to all values in your second column, e.g. Comp is 42100 , CompVV is 42200, HomeCon is 42300 etc. You have to have two columns, with the same number in each. And use high values.

        Copy all the values from your original first column to a new sheet, remove duplicates, then with a COUNTIF formula count how many are there in your original first column of each. Then with a SUMIFS formula, sum the numbers in your first newly added column if they belong to a given value in your first original column. Then divide the result of these SUMIFS with the results of the COUNTIFS. Then lookup the numbers you get from this in your second added column. If they match, hooray, otherwise, there are different values assigned in your original second column to a value in your original first column.

        Hope this makes sense. It was much easier to do it then to explain it.

        • tvereb says:

          This would be the end result using your values and my assigned numbers:

          10491507PN 1 42100 42100 42100
          10504180PR 1 42100 42100 42100
          10600056PK 1 42200 42200 42200
          10637712PW 2 84600 42300 42300
          10847773PE 1 42100 42100 42100
          10862215PR 1 42100 42100 42100
          10895567PF 1 42100 42100 42100
          10931675P4 1 42100 42100 42100
          10958992PO 1 42100 42100 42100
          10968118P7 2 84900 42450 #N/A
          11383371PV 1 42600 42600 42600
          11392084PW 1 42600 42600 42600
          11650616PO 1 42200 42200 42200

  14. Tony says:

    if i have a value in A1 which i need to change to match value which is manually entered along the columns i.e if value is 10 and then 12 is entered into B1 i need A1 to match, and so on if 18 is entered into H1, A1 needs to change to 18

  15. Valnoir says:

    I have a table with 50 columns and I want to create a new one who will display me if 2 or more values on the row are the same.

    No. C1 C2 C3 C4 C5 C6 N
    10 5 3 20 20 3 21 4
    11 7 2 7 3 1 7 3
    In my exemple N is the new column and it says to me that 4 ( C3 = C4 so 2 columns, C2 = C5 so another 2 columns, therefor 4 will be display) of the 6 column are matching with atleas one other column.

    Thank you !

  16. Shuam says:

    I need to count number of Sunday's he worked by referring empid from one sheet to another sheet.

    Information in sheet1 is emp I'd column and no. Of Sunday's to count in another column.

    Information in sheet 2 is list of emp IDs and worked on all weekdays in days.

  17. ce says:

    If I have older text in column A and newer text in column B for some Cells.
    How do I merge both with a logic saying:
    If there is no new text on column B, keep text of column A. If there is text on Column B, take text from column B.
    Thank you

  18. joanne says:

    Here is my example:

    Column A Column B Column C
    2 Yes 5
    1 No
    10 Yes 8

    Is there a formula to state," If ColumnB=yes, then change ColumnA to ColumnC or if ColumnB=no, then do not change ColumnA


  19. Siva says:

    I have values in two different columns like below Example
    A b
    1 a
    2 b
    5 c

    How to compare and get output in C column on the condition If A have values, I want value of A in column C, If A don't have value I want value of B in Colum C, If column A,B are Empty C should be Empty)

    Expected output

    A b C
    1 a 1
    2 b 2
    5 c 5
    6 6
    d d

  20. SaketW says:

    I have file as file as below

    A B C || D E F || G H I

    Now each of the columns A/B/C/D.... has some entries.
    I want to check for XYZ if value in A=D=G and B=E=H and C=F=I if all of this conditions are true then the value for XYZ should be true or else false.

    RIght now I am using And condition and comparing the cell values individually which is time consuming.
    Is there elegant way of doing it.

    Note: Here number of set of columns can be 2/3/4 or more with each set having 2 or more columns.

  21. Preetha says:


    I want to compare A1 to range of columns C1-C15 and B1 to range of columns D1- D15. If both conditions meet then i should return true. Please provide a way to resolve this


  22. Amali says:

    How to see the differences in two colums which have dates.. But the difference has to find with the dd only.

    Eg: 20210501 20210601 with this data the dd part is matching
    20210501 20210616 with this data dd part is not matching ( this is i need to find in a sheet)

  23. sandeep ar says:

    I have 2 excel sheets with 2 columns :
    Name of Item Values
    Want to compare "Name of Item" of 2 excels , and if same, compare "Values" .

    If values same , i want to create and populate with matching entries only.

    Thanks a lot in advance for help.

  24. Soumya says:

    How do I compare 3 columns and get the result one among them. Ex- Column A is having results Red, B is Orange and C is Green. I need a result Red.

  25. armin says:


    how to compare 2 columns and if they had the value we want, and count those matches?
    A B
    1 2
    3 4
    1 2
    we want to count how many rows are there that A=1 AND B=2 ?

  26. Thanga Saravanan says:

    Please ignore previous message. Consider this below message.

    Hi Hello,

    Table: 1
    Beg Page End Page Pg Count Date Type Title
    1 4 4 04/07/2021 06_Other Notice to Assessor
    5 8 4 09/02/2020 03_Investigations Police Report
    9 9 1 00/00/0000 07_Other Fax
    10 11 2 02/26/2021 06_Other Legal Correspondence
    12 18 7 02/26/2021 01_Forms Accident Benefits Form
    19 19 1 02/26/2021 06_Other Authorzation
    20 20 1 02/17/2021 01_Forms Caregiver Benefit Form
    21 21 1 00/00/0000 03_Investigations Accident Report
    22 22 1 01/21/2021 06_Other Correspondence
    23 24 2 01/19/2021 01_Forms Activities Form
    25 25 1 11/12/2020 06_Other Legal Correspondence

    Table: 2
    Beg Page End Page Pg Count Date Type Title
    1 4 4 04/07/2021 06_Other Notice to Assessor
    10 11 2 02/26/2021 06_Other Legal Correspodence
    12 18 7 02/26/2021 06_Other Accident Benefits Form
    19 19 1 02/26/2021 06_Other Authorization
    20 20 1 02/17/2021 01_Forms Authorization
    21 21 1 00/00/0000 03_Investigations Accident Report
    22 22 1 01/21/2021 06_Other Legal Correspondence
    23 24 2 01/19/2021 01_Forms Activities Form
    25 25 1 12/11/2020 03_Investigations Legal Correspondence

    Sir, How to compare Table1 vs Table2 as a result of missing sequence, date differences, type differences & Title differences?

  27. QuasimodoV says:

    Hello all,
    thank you for this really helpful, have one question though.

    I need to compare two files with over 60k rows and columns from A to BD where only certain information was changed and the new file does not contain all rows as the original one. That means first vlookup and than match :/ is it somehow possible?

    Thank you for your help...

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 :)