¿Cómo comparar dos cadenas en busca de similitudes o resaltar diferencias en Excel?
En algunos casos, es posible que solo necesite comparar dos celdas adyacentes de cadenas y marcar sus similitudes o diferencias en Excel. Este artículo proporciona dos métodos para lograrlo.
Compara dos cadenas con fórmula
Compare dos cadenas de similitud o resalte las diferencias con el código VBA
Compara dos cadenas con fórmula
Como se muestra a continuación, si solo desea saber si las cadenas comparadas coinciden o no, puede aplicar la siguiente fórmula.
1. Seleccione una celda en blanco C2, ingrese la fórmula = EXACTO (A2, B2) en la barra de fórmulas y luego presione la tecla Intro. Ver captura de pantalla:
Note: En la fórmula, A2 y B2 son las celdas que contienen las cadenas de comparación.
2. Siga seleccionando la celda de resultado, luego arrastre el controlador de relleno a las celdas hasta obtener todos los resultados comparados.
El resultado FALSO significa que las cadenas comparadas son diferentes y el resultado VERDADERO indica que las dos cadenas comparadas coinciden. Ver captura de pantalla:
Compare dos cadenas de similitud o resalte las diferencias con el código VBA
Si desea comparar dos cadenas y resaltar las similitudes o diferencias entre ellas. El siguiente código VBA puede ayudarlo.
1. Prensa otro + F11 teclas simultáneamente para abrir el Microsoft Visual Basic para aplicaciones ventana.
2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Módulo. Luego copie y pegue el siguiente código en la ventana Código.
Código de VBA: compare dos cadenas de columnas en busca de similitudes o resalte las diferencias
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. presione el F5 clave para ejecutar el código. En el primero Kutools for Excel cuadro de diálogo, seleccione la primera columna de cadenas de texto que necesita comparar, y luego haga clic en el OK del botón.
4. Luego el segundo Kutools for Excel aparece el cuadro de diálogo, seleccione las cadenas de la segunda columna y haga clic en el OK del botón.
5. En el último Kutools for Excel cuadro de diálogo, si desea comparar cadenas de similitud, haga clic en el Sí botón. Y para resaltar las diferencias de las cadenas comparadas, haga clic en el No botón. Ver captura de pantalla:
Luego puede ver los resultados comparados como se muestra a continuación.
Artículos relacionados:
- ¿Cómo comparar dos columnas y resaltar los datos no coincidentes en Excel?
- ¿Cómo comparar exactamente dos cadenas (distingue entre mayúsculas y minúsculas) en Excel?
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!