How to Compare Text in Excel and Highlight Differences (8 Quick Ways)

In some cases, we may only need to compare texts of strings and highlight their similarities or differences in Excel. This article will guide you with eight easy methods to compare text in Excel and highlight differences.


Download Practice Book

You can download the free Excel template from here and practice on your own.


5 Quick Ways to Compare Text in Excel and Highlight Differences for Same Row

Let’s get introduced to our dataset first. I have placed some best-selling books in an online shop for two consecutive months. Now I’ll compare them and highlight differences using some easy techniques. First, I’ll show how to do it for the same rows.

Method 1: The EXACT Function

The EXACT function is used to compare two strings or data with each other and it gives us the result whether both data are an exact match or not. Let’s use it for our very first method. To show the output I have added a new column named ‘Remark’.

Step 1:

⏩Activate Cell D5

=EXACT(B5,C5)

⏩Then hit the Enter button.

The EXACT Function

Step 2:

⏩After that double click the Fill Handle icon to copy the formula for the other cells.

The EXACT Function

Now take a look at the output that it is showing FALSE for different values and TRUE for matched values in the same row.

Read More: Compare Two Cells in Excel and Return TRUE or FALSE (5 Quick Ways)


Method 2: The Boolean Logic

We can perform the same operation using simple Boolean logic. For the different values, it will show TRUE and FALSE for the matched values in the same row.

Step 1:

⏩Write the given formula in Cell D5

=B5<>C5

⏩Press the Enter button and apply the Fill Handle icon to copy the formula.

The Boolean Logic

Here’s our output-

The Boolean Logic


Method 3: The IF Function

If you use the IF function with the Boolean logic then we can get the output with our specified text. I have set that it will show ‘Unique’ if it gets a different text and ‘Similar’ if gets the same text.

Steps:

⏩In Cell D5 type the formula-

=IF(B5<>C5,"Unique","Similar")

⏩Then just click the Enter button and use the Fill Handle tool.

The IF Function

Now you will get the output with specified text.

The IF Function

Read More: Return YES If 2 Cells Match in Excel (10 Methods)


Method 4: Conditional Formatting with Formula

Conditional Formatting is a very convenient option to compare text and highlight differences in Excel. Here we can use pre-selected colors to highlight differences.

Step 1:

⏩Select the data range B5:C12

⏩Then click as follows: Home > Conditional Formatting > New Rule

A formatting dialog box will open up.

Conditional Formatting with Formula

Step 2:

⏩ Press Use a formula to determine which cells to format from the Select a Rule Type box.

⏩Later, type the formula given below in Format values where this formula is true box-

=$B5<>$C5

⏩Click Format.

Then ‘Format Cells’ dialog box will appear.

Conditional Formatting with Formula

Step 3:

⏩ Choose your desired color from the Fill option. I have chosen lite green color.

⏩Press Ok and it will go back to the previous dialog box.

Conditional Formatting with Formula

Step 4:

⏩ At this moment, just press OK.

Conditional Formatting with Formula

Now you see that all the different values in the same row are now highlighted with picked color.

Read More: How to Compare Two Cells and Change Color in Excel (2 Ways)


Method 5: Excel VBA Macros

Instead of using built-in functions, we can code in Excel to perform any desired operation. In this method, I will highlight differences in the same row using VBA codes.

Step 1:

Right-click your mouse to the sheet title to open the VBA window.

Excel VBA Macros

Step 2:

⏩Write the codes given below-

Sub highlight()
    Dim yRange1 As Range
    Dim yRange2 As Range
    Dim yText As String
    Dim yCell1 As Range
    Dim yCell2 As Range
    Dim I As Long
    Dim J As Integer
    Dim yLen As Integer
    Dim yDiffs As Boolean
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      yText = ActiveWindow.RangeSelection.AddressLocal
    Else
      yText = ActiveSheet.UsedRange.AddressLocal
    End If
lOne:
    Set yRange1 = Application.InputBox("Range A:", "Compare Text", yText, , , , , 8)
    If yRange1 Is Nothing Then Exit Sub
    If yRange1.Columns.Count > 1 Or yRange1.Areas.Count > 1 Then
        MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Compare Text"
        GoTo lOne
    End If
lTwo:
    Set yRange2 = Application.InputBox("Range B:", "Compare Text", "", , , , , 8)
    If yRange2 Is Nothing Then Exit Sub
    If yRange2.Columns.Count > 1 Or yRange2.Areas.Count > 1 Then
        MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Compare Text"
        GoTo lTwo
    End If
    If yRange1.CountLarge <> yRange2.CountLarge Then
       MsgBox "Two selected ranges must have the same numbers of cells ", vbInformation, "Compare Text"
       GoTo lTwo
    End If
    yDiffs = (MsgBox("Click Yes to highlight similarities, click No to highlight differences ", vbYesNo + vbQuestion, "Compare Text") = vbNo)
    Application.ScreenUpdating = False
    yRange2.Font.ColorIndex = xlAutomatic
    For I = 1 To yRange1.Count
        Set yCell1 = yRange1.Cells(I)
        Set yCell2 = yRange2.Cells(I)
        If yCell1.Value2 = yCell2.Value2 Then
            If Not yDiffs Then xCell2.Font.Color = vbRed
        Else
            yLen = Len(yCell1.Value2)
            For J = 1 To yLen
                If Not yCell1.Characters(J, 1).Text = yCell2.Characters(J, 1).Text Then Exit For
            Next J
            If Not yDiffs Then
                If J <= Len(yCell2.Value2) And J > 1 Then
                    yCell2.Characters(1, J - 1).Font.Color = vbRed
                End If
            Else
                If J <= Len(yCell2.Value2) Then
                    yCell2.Characters(J, Len(yCell2.Value2) - J + 1).Font.Color = vbRed
                End If
            End If
        End If
    Next
    Application.ScreenUpdating = True
End Sub

⏩Later, press the Run icon to run the codes.

Excel VBA Macros

Now a dialog box will open up to select the first data range.

Step 3:

⏩Select the range B5:C12

⏩Press OK then another dialog box will open up to select the second data range.

Excel VBA Macros

Step 4:

⏩Set the data range C5:C12

⏩Press OK again.

Excel VBA Macros

Step 5:

⏩Now to highlight differences just press the No button.

Now see, different text in the same rows are now highlighted with red color.


3 Quick Ways to Compare Text in Excel and Highlight Differences for All Rows

Method 1: Conditional Formatting

We can use the Conditional Formatting tool to compare text in excel and highlight differences for all the rows without any formula.

Step 1:

⏩ Select the data range B5:C12

⏩Then click as follows: Home > Conditional Formatting > Highlight Cells Rules > Duplicate Values.

A dialog box will open up.

Conditional Formatting

Step 2:

⏩ Select the Unique option and desired color from the Format cells that contain box.

⏩Finally, just press OK.

Conditional Formatting

All the different texts are now highlighted with our picked color.


Method 2: IF+COUNTIF Functions

To compare text in excel and highlight differences now we’ll combine two functions which are- the IF function and the COUNTIF function. Here, we’ll check the text of Column B whether they are common in Column C or not in any row. The IF function checks whether a condition is met and returns one value if true and another value if false. The COUNTIF is used to count cells in a range that meets a single condition.

Steps:

⏩Type the formula in Cell D5

=IF(COUNTIF($C$5:$C$12,$B5)=0,"No match in C","Match in C")

⏩Hit the Enter button.

⏩Finally, use the Fill Handle icon to copy the combined formula.

IF+COUNTIF Functions

Now we can easily find out the differences from the image below-

Formula Breakdown:

COUNTIF($C$5:$C$12,$B5)=0

The COUNTIF function will check the value of Cell B5 through the range C5:C12 whether it is equal or not. If equal then it will return 1, otherwise 0. So the output will return as-

FALSE

IF(COUNTIF($C$5:$C$12,$B5)=0,”No match in C”,”Match in C”)

Finally, the IF function will show ‘No match in C’ for FALSE and ‘Match in C’ for TRUE. It will return as-

No Match in C


Method 3: ISERROR+VLOOKUP Functions

Lastly, let’s use another combination of functions to do the previous operation. We’ll apply the ISERROR and VLOOKUP functions. It will check the text of Column B through Column C, if it gets an uncommon text then it will show TRUE if not then it will show FALSE. The ISERROR function in Excel checks whether a value is an error and returns TRUE or FALSE. The VLOOKUP function is used to look up a value in the leftmost column of a table and returns the corresponding value from a column to the right.

Steps:

⏩Type the given formula in Cell D5

=ISERROR(VLOOKUP(B5,$C$5:$C$12,1,0))

⏩Then just hit the Enter button and use the Fill Handle tool to copy the formula.

ISERROR+VLOOKUP Functions

Now see the output in the image below-

Formula Breakdown:

VLOOKUP(B5,$C$5:$C$12,1,0)

The VLOOKUP function will check Cell B5 through the range C5:C12. If it finds a common value then it will show that value otherwise will show #N/A. So it returns for Cell B5

#N/A

ISERROR(VLOOKUP(B5,$C$5:$C$12,1,0))

Then the ISERROR function will show “TRUE” for #N/A and “FALSE” for other outputs. For Cell B5 it will return as-

“TRUE”


Conclusion

I hope all of the methods described above will be good enough to compare text in Excel and highlight differences. Feel free to ask any questions in the comment section and please give me feedback.


Related Articles

Mithun

Mithun

Hello! I am Md. Sourov Hossain Mithun. Welcome to my profile. Currently, I am working at Exceldemy as an Excel and VBA Content Developer. Excel is amazing software. Here I will post excel related useful articles. I am a graduate of Bangladesh University of Engineering and Technology. I love to learn new things and work with them. Thank you.

We will be happy to hear your thoughts

Leave a reply

ExcelDemy
Logo