如何在Excel中比較兩個字符串的相似性或突出顯示差異?
在某些情況下,您可能只需要比較兩個相鄰的字符串單元格并在Excel中標記它們的相似性或差異。 本文為您提供了兩種實現方法。
用公式比較兩個字符串
比較兩個字符串的相似性或使用VBA代碼突出顯示差異
用公式比較兩個字符串
如下面的屏幕截圖所示,如果您只想知道比較的字符串是否匹配,則可以應用以下公式。
1.選擇一個空白單元格C2,輸入公式 = EXACT(A2,B2) 進入公式欄,然后按Enter鍵。 看截圖:
備注:在公式中,A2和B2是包含比較字符串的單元格。
2.繼續選擇結果單元格,然后將“填充手柄”拖動到單元格,直到獲得所有比較的結果。
FALSE結果表示比較的字符串不同,TRUE結果表示兩個比較的字符串匹配。 看截圖:
比較兩個字符串的相似性或使用VBA代碼突出顯示差異
如果要比較兩個字符串并突出顯示它們之間的相似性或差異。 以下VBA代碼可以為您提供幫助。
1。 按 其他 + F11 同時打開 Microsoft Visual Basic應用程序 窗口。
2.在 Microsoft Visual Basic應用程序 窗口中,單擊 插頁 > 模塊。 然后將以下代碼復制并粘貼到“代碼”窗口中。
VBA代碼:比較兩個列字符串的相似性或突出顯示差異
Sub highlight()
Dim xRg1 As Range
Dim xRg2 As Range
Dim xTxt As String
Dim xCell1 As Range
Dim xCell2 As Range
Dim I As Long
Dim J As Integer
Dim xLen As Integer
Dim xDiffs As Boolean
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
lOne:
Set xRg1 = Application.InputBox("Range A:", "Kutools for Excel", xTxt, , , , , 8)
If xRg1 Is Nothing Then Exit Sub
If xRg1.Columns.Count > 1 Or xRg1.Areas.Count > 1 Then
MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
GoTo lOne
End If
lTwo:
Set xRg2 = Application.InputBox("Range B:", "Kutools for Excel", "", , , , , 8)
If xRg2 Is Nothing Then Exit Sub
If xRg2.Columns.Count > 1 Or xRg2.Areas.Count > 1 Then
MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
GoTo lTwo
End If
If xRg1.CountLarge <> xRg2.CountLarge Then
MsgBox "Two selected ranges must have the same numbers of cells ", vbInformation, "Kutools for Excel"
GoTo lTwo
End If
xDiffs = (MsgBox("Click Yes to highlight similarities, click No to highlight differences ", vbYesNo + vbQuestion, "Kutools for Excel") = vbNo)
Application.ScreenUpdating = False
xRg2.Font.ColorIndex = xlAutomatic
For I = 1 To xRg1.Count
Set xCell1 = xRg1.Cells(I)
Set xCell2 = xRg2.Cells(I)
If xCell1.Value2 = xCell2.Value2 Then
If Not xDiffs Then xCell2.Font.Color = vbRed
Else
xLen = Len(xCell1.Value2)
For J = 1 To xLen
If Not xCell1.Characters(J, 1).Text = xCell2.Characters(J, 1).Text Then Exit For
Next J
If Not xDiffs Then
If J <= Len(xCell2.Value2) And J > 1 Then
xCell2.Characters(1, J - 1).Font.Color = vbRed
End If
Else
If J <= Len(xCell2.Value2) Then
xCell2.Characters(J, Len(xCell2.Value2) - J + 1).Font.Color = vbRed
End If
End If
End If
Next
Application.ScreenUpdating = True
End Sub
3。 按 F5 鍵來運行代碼。 在第一 Kutools for Excel 對話框中,選擇要比較的文本字符串的第一列,然后單擊 OK 按鈕。
4.然后第二 Kutools for Excel 彈出對話框,請選擇第二列字符串,然后單擊 OK 按鈕。

5.最后 Kutools for Excel 對話框中,如果要比較字符串的相似性,請單擊 是 按鈕。 并突出顯示比較字符串的差異,請單擊 沒有 按鈕。 看截圖:
然后您可以看到比較結果,如下圖所示。
相關文章:
如何比較兩列并在Excel中突出顯示不匹配的數據?
如何在Excel中精確比較兩個字符串(區分大小寫)?
最佳辦公生產力工具
將小時轉化為分鐘 Kutools for Excel!
準備好增強您的 Excel 任務了嗎? 利用的力量 Kutools for Excel - 您終極的節省時間的工具。 簡化復雜的任務并像專業人士一樣瀏覽數據。 以閃電般的速度體驗 Excel!
為什么需要 Kutools for Excel
??? 超過 300 項強大功能: Kutools 包含 300 多項高級功能,可簡化您在 1500 多種場景中的工作。
?? 卓越的數據處理能力:合并單元格、刪除重復項并執行高級數據轉換 - 所有這些都不費吹灰之力!
?? 高效的批量操作:當你可以聰明地工作時,為什么還要付出額外的努力呢? 輕松批量導入、導出、組合和調整數據。
?? 可定制的圖表和報告:訪問各種附加圖表并生成富有洞察力的報告。
??? 強大的導航窗格:通過強大的列管理器、工作表管理器和自定義收藏夾獲得優勢。
?? 七種類型的下拉列表:通過各種功能和類型的下拉列表使數據輸入變得輕而易舉。
?? 用戶友好:對于初學者來說輕而易舉,對于專家來說是一個強大的工具。
立即下載,與 Excel 一起穿越時空!
閱讀更多
免費下載... 采購...
Office Tab 為 Office 帶來選項卡式界面,讓您的工作更輕松
在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
在同一窗口的新選項卡中而不是在新窗口中打開并創建多個文檔。
每天將您的工作效率提高50%,并減少數百次鼠標單擊!