Cómo comparar dos celdas en Excel (comparación de cadenas)

El tutorial muestra cómo comparar cadenas de texto en Excel para la coincidencia insensible a mayúsculas y minúsculas y exacta. Aprenderá una serie de fórmulas para comparar dos celdas por sus valores, la longitud de la cadena o el número de apariciones de un carácter específico, así como la forma de comparar múltiples celdas.

Cuando se utiliza Excel para el análisis de datos, la precisión es la preocupación más vital. La información incorrecta hace que no se cumplan los plazos, que se juzguen mal las tendencias, que se tomen decisiones equivocadas y que se pierdan ingresos.

Aunque las fórmulas de Excel son siempre perfectamente verdaderas, sus resultados pueden ser erróneos porque algún dato defectuoso haya penetrado en el sistema. En este caso, el único remedio es comprobar la exactitud de los datos. No es gran cosa comparar dos celdas manualmente, pero es casi imposible detectar las diferencias entre cientos y miles de cadenas de texto.

Este tutorial le enseñará cómo automatizar la tediosa y propensa a errores tarea de la comparación de celdas y qué fórmulas son las mejores para usar en cada caso particular.

  • Cómo comparar 2 celdas en Excel
  • Cómo comparar múltiples celdas
  • Comparar un rango de celdas con una celda de muestra
  • Comparar celdas por longitud de cadena
  • Comparar cadenas por ocurrencias de un carácter específico

Cómo comparar dos celdas en Excel

Hay dos formas diferentes de comparar cadenas en Excel dependiendo de si se busca una comparación que distinga entre mayúsculas y minúsculas.sensible o insensible a las mayúsculas y minúsculas.

Fórmula que no distingue entre mayúsculas y minúsculas para comparar 2 celdas

Para comparar dos celdas en Excel ignorando las mayúsculas y minúsculas, utiliza una fórmula sencilla como esta:

=A1=B1

Donde A1 y B1 son las celdas que estás comparando. El resultado de la fórmula son los valores booleanos TRUE y FALSE.

Si quiere emitir sus propios textos para las coincidencias y las diferencias, incruste la declaración anterior en la prueba lógica de la función IF. Por ejemplo:

=IF(A1=B1, "Equal", "Not equal")

Como puede ver en la captura de pantalla de abajo, ambas fórmulas comparan cadenas de texto, fechas y números igualmente bien:
Fórmula que no distingue entre mayúsculas y minúsculas para comparar 2 celdas en Excel

Fórmula que distingue entre mayúsculas y minúsculas para comparar cadenas en Excel

En algunas situaciones, puede ser importante no sólo comparar el texto en dos celdas, sino también comparar el caso de los caracteres. La comparación de texto sensible a las mayúsculas y minúsculas puede realizarse utilizando la función EXACTO de Excel:

EXACTO (texto1, texto2)

Donde texto1 y texto2 son las dos celdas que estás comparando.

Suponiendo que tus cadenas están en las celdas A2 y B2, la fórmula es la siguiente:

=EXACT(A2, B2)

Como resultado, obtienes TRUE si las cadenas de texto coinciden exactamente incluyendo el caso de cada carácter, FALSE en caso contrario.

Si desea que la función EXACTA ofrezca otros resultados, incrústela en una fórmula IF y escriba su propio texto para los argumentos value_if_true y value_if_false:

=IF(EXACT(A2 ,B2), "Exactly equal", "Not equal")

La siguiente captura de pantalla muestra los resultados de la comparación de cadenas de texto que distinguen mayúsculas y minúsculas en Excel:
Fórmula que distingue entre mayúsculas y minúsculas para comparar cadenas en Excel

Cómo comparar múltiples celdas en Excel

Para comparar más de 2 celdas en una fila, utilice las fórmulas comentadas en los ejemplos anteriores en combinación con el operador AND. Los detalles completos siguen a continuación.

Fórmula que no distingue entre mayúsculas y minúsculas para comparar más de 2 celdas

Dependiendo de cómo quiera mostrar los resultados, utilice una de las siguientes fórmulas:

=AND(A2=B2, A2=C2)

o

=IF(AND(A2=B2, A2=C2), "Equal", "Not equal")

La fórmula AND devuelve TRUE si todas las celdas contienen el mismo valor, FALSE si algún valor es diferente. La fórmula IF devuelve las etiquetas que se escriben en ella, «Igual» y «No igual» en este ejemplo.

Como se demuestra en la siguiente captura de pantalla, la fórmula funciona perfectamente con cualquier tipo de datos – texto, fechas y valores numéricos:

Comparación de múltiples celdas ignorando las mayúsculas y minúsculas de los caracteres

Fórmula que distingue entre mayúsculas y minúsculas para comparar texto en varias celdas

Para comparar múltiples cadenas entre sí para ver si coinciden exactamente, utilice las siguientes fórmulas:

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

O

=IF(AND(EXACT(A2,B2), EXACT(A2, C2)),"Exactly equal", "Not equal")

Al igual que en el ejemplo anterior, la primera fórmula entrega los valores VERDADERO y FALSO, mientras que la segunda muestra sus propios textos para las coincidencias y diferencias:
Comparar varias cadenas de caracteres con exactitud incluyendo las mayúsculas y minúsculas

Comparar un rango de celdas con una celda de muestra

Los siguientes ejemplos muestran cómo se puede verificar que todas las celdas de un rango determinado contienen el mismo texto que en una celda de muestra.

Fórmula que no distingue entre mayúsculas y minúsculas para comparar celdas con un texto de muestra

Si las mayúsculas y minúsculas de los caracteres no importan realmente, puede utilizar la siguiente fórmula para comparar celdas con una muestra:

Rangos(rango)*Columnas(rango)=COUNTIF(rango, celda de muestra)

En la prueba lógica de la función IF, se comparan dos números:

  • El número total de celdas en un rango especificado (el número de filas multiplicado por el número de columnas), y
  • El número de celdas que contienen el mismo valor que en la celda de muestra (devuelto por la función COUNTIF).

Suponiendo que el texto de muestra está en C2 y las cadenas a comparar están en el rango A2:B6, la fórmula es la siguiente:

=ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2)

Para hacer los resultados más fáciles de usar, es decir que aparezca algo como «Todos coinciden» y «No todos coinciden» en lugar de TRUE y FALSE, utilice la función IF como hicimos en los ejemplos anteriores:

=IF(ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2),"All match", "Not all match")

Fórmula que no distingue entre mayúsculas y minúsculas para comparar celdas con un texto de muestra

Como se muestra en la captura de pantalla anterior, la fórmula se adapta perfectamente a un rango de cadenas de texto, pero también puede utilizarse para comparar números y fechas.

Fórmula que distingue entre mayúsculas y minúsculas para comparar cadenas con un texto de muestra

Si las mayúsculas y minúsculas suponen una diferencia, puede comparar cadenas con el texto de muestra utilizando las siguientes fórmulas de matriz.

IF(FILAS(rango)*COLUMNAS(rango)=SUMA(–EXACTO(celda_de_muestra, rango)), «texto_si_coincide», «texto_si_no_coincide»)

Con el rango de origen residiendo en A2:B6 y el texto de muestra en C2, la fórmula toma la siguiente forma:

=IF(ROWS(A2:B6)*COLUMNS(A2:B6)=SUM(--EXACT(C2, A2:B6)), "All match", "Not all match")

A diferencia de las fórmulas normales de Excel, las fórmulas de matriz se completan pulsando Ctrl + Shift + Enter. Si se introduce correctamente, Excel encierra la fórmula de matriz entre {corchetes}, como se muestra en la captura de pantalla:
Fórmula para comparar cadenas con un texto de muestra

Cómo comparar dos celdas por la longitud de la cadena

A veces puede querer comprobar si las cadenas de texto de cada fila contienen un número igual de caracteres. La fórmula para esta tarea es muy sencilla. Primero, obtienes la longitud de la cadena de dos celdas utilizando la función LEN, y luego comparas los números.

Suponiendo que las cadenas a comparar están en las celdas A2 y B2, utiliza cualquiera de las siguientes fórmulas:

=LEN(A2)=LEN(B2)

O

=IF(LEN(A2)=LEN(B2), "Equal", "Not equal")

Como ya sabes, la primera fórmula devuelve los valores booleanos TRUE o FALSE, mientras que la segunda fórmula devuelve tus propios resultados:

Comparación de dos celdas por longitud de cadena

Como se demuestra en la captura de pantalla anterior, las fórmulas funcionan tanto para cadenas de texto como para números.

Consejo. Si dos cadenas aparentemente iguales devuelven longitudes diferentes, lo más probable es que el problema esté en los espacios iniciales o finales de una o ambas celdas. En este caso, elimine los espacios sobrantes utilizando la función TRIM. La explicación detallada y los ejemplos de fórmulas se pueden encontrar aquí: Cómo recortar espacios en Excel.

Comparar dos celdas por ocurrencias de un carácter específico

Este es el último ejemplo de nuestro tutorial de Comparación de cadenas en Excel, y muestra una solución para una tarea bastante específica. Supongamos que tiene 2 columnas de cadenas de texto que contienen un carácter importante para usted. Su objetivo es comprobar si dos celdas en cada fila contienen el mismo número de ocurrencias de un carácter dado.

Para hacer las cosas más claras, considere el siguiente ejemplo. Digamos que tiene dos listas de pedidos enviados (columna B) y recibidos (columna C). Cada fila contiene pedidos para un artículo específico, cuyo identificador único está incluido en todos los ID de los pedidos y aparece en la misma fila de la columna A (vea la captura de pantalla siguiente). Quiere asegurarse de que cada fila contiene un número igual de artículos enviados y recibidos con ese ID específico.

Para resolver este problema, escriba una fórmula con la siguiente lógica.

  • En primer lugar, sustituya el identificador único por nada utilizando la función SUBSTITUTE:

    SUBSTITUTE(A1, character_to_count,"")

  • A continuación, calcule cuántas veces aparece el identificador único en cada celda. Para ello, obtenga la longitud de la cadena sin el identificador único y réstela de la longitud total de la cadena. Esta parte se escribirá para la celda 1 y la celda 2 individualmente, por ejemplo:

    LEN(cell 1) - LEN(SUBSTITUTE(cell 1, character_to_count, ""))
    y
    LEN(cell 2) - LEN(SUBSTITUTE(cell 2, character_to_count, ""))

  • Por último, compara estos 2 números colocando el signo de igualdad (=) entre las partes anteriores.
LEN(celda 1) – LEN(SUBSTITUTE(celda 1, carácter_a_cuenta, «»))=
LEN(celda 2) – LEN(SUBSTITUTE(celda 2, carácter_a_cuenta, «»))

En nuestro ejemplo, el identificador único está en A2, y las cadenas a comparar están en las celdas B2 y C2. Así, la fórmula completa es la siguiente:

=LEN(B2)-LEN(SUBSTITUTE(B2,$A2,""))=LEN(C2)-LEN(SUBSTITUTE(C2,$A2,""))

La fórmula devuelve TRUE si las celdas B2 y C2 contienen un número igual de ocurrencias del carácter en A2, FALSE en caso contrario. Para que los resultados sean más significativos para tus usuarios, puedes incrustar la fórmula en la función IF:

=IF(LEN(B2)-LEN(SUBSTITUTE(B2, $A2,""))=LEN(C2)-LEN(SUBSTITUTE(C2, $A2,"")), "Equal", "Not equal")

Comparar las ocurrencias de un carácter específico en dos celdas

Como puedes ver en la captura de pantalla anterior, la fórmula funciona perfectamente a pesar de un par de complicaciones adicionales:

  • El carácter a contar (identificador único) puede aparecer en cualquier parte de una cadena de texto.
  • Las cadenas contienen un número variable de caracteres y diferentes separadores como el punto y coma, la coma o el espacio.

Así se comparan las cadenas en Excel. Para tener una mirada más cercana a las fórmulas discutidas en este tutorial, usted es bienvenido a descargar Excel Comparar Cadenas Hoja de Trabajo. Te agradezco la lectura y espero verte en nuestro blog la próxima semana.

También te puede interesar

  • Comparar dos columnas en Excel por coincidencias y diferencias
  • Cómo comparar dos hojas de cálculo de Excel por diferencias
  • Cómo usar el operador lógico para comparar números
  • 4 formas de hacer un vlookup sensible a mayúsculas y minúsculas en Excel

Deja una respuesta

Tu dirección de correo electrónico no será publicada.