Comparar archivos

Cómo comparar dos columnas en Excel y encontrar coincidencias y diferencias

Fórmulas y formato condicional para saber qué valores coinciden entre dos columnas, cuáles faltan en una de ellas y cómo extraerlos en una lista aparte.

Cómo comparar dos columnas en Excel y encontrar coincidencias y diferencias

Tienes dos listas en Excel, por ejemplo los códigos de producto del inventario y los que aparecen en el catálogo web, y necesitas saber cuáles están en las dos, cuáles faltan en una y cuáles sobran. Revisarlo a ojo funciona con diez filas; con quinientas, es fácil que se te escape algo.

Aquí tienes los métodos más útiles para comparar dos columnas, desde la comparación fila a fila hasta extraer automáticamente las diferencias, con fórmulas que puedes copiar tal cual.

Los datos de ejemplo

Usaremos esta hoja: en la columna A, los códigos del inventario; en la B, los del catálogo web. Los encabezados están en la fila 1 y los datos van de la fila 2 a la 7.

Fila A: Inventario B: Catálogo web
2 P-101 P-101
3 P-102 P-104
4 P-103 P-103
5 P-104 P-107
6 P-105 P-102
7 P-106 P-108

Antes de elegir un método, hazte una pregunta: ¿importa la posición? Si cada fila representa lo mismo en las dos columnas (por ejemplo, el precio antiguo y el nuevo de un producto), compara fila a fila. Si son dos listas independientes en distinto orden, necesitas buscar cada valor en la otra columna.

Comparar fila a fila

La forma más simple es escribir en C2 una igualdad y copiarla hacia abajo:

=A2=B2

Devuelve VERDADERO o FALSO. Si prefieres un texto más claro:

=SI(A2=B2;"Igual";"Distinto")

Con los datos de ejemplo, solo las filas 2 y 4 salen como «Igual». Fíjate en que P-102 y P-104 aparecen en las dos columnas, pero en filas distintas, así que este método las marca como diferentes. Por eso solo sirve cuando las filas están alineadas.

Distinguir mayúsculas y minúsculas

El operador = no distingue entre «abc» y «ABC». Si necesitas que cuenten como distintos, usa IGUAL:

=SI(IGUAL(A2;B2);"Igual";"Distinto")

Saber si un valor está en la otra columna

Cuando el orden no importa, la herramienta clave es CONTAR.SI. Escribe en C2:

=SI(CONTAR.SI($B$2:$B$7;A2)>0;"Está en el catálogo";"Falta en el catálogo")

La fórmula cuenta cuántas veces aparece A2 en el rango B2:B7. Si es más de cero, el código está. Los signos $ fijan el rango para que no se desplace al copiar la fórmula. Resultado: P-101, P-102, P-103 y P-104 están en el catálogo; P-105 y P-106 faltan.

Para el camino contrario (qué hay en el catálogo que no está en el inventario), escribe en D2 y copia hacia abajo:

=SI(CONTAR.SI($A$2:$A$7;B2)=0;"No está en inventario";"")

Así descubres P-107 y P-108.

Alternativa con COINCIDIR

Si prefieres funciones de búsqueda, esta fórmula da el mismo resultado:

=SI(ESNUMERO(COINCIDIR(A2;$B$2:$B$7;0));"Sí";"No")

COINCIDIR devuelve la posición del valor o #N/A si no lo encuentra, y ESNUMERO convierte eso en VERDADERO o FALSO. Si además quieres traer un dato de la otra lista, como el precio publicado en una columna C del catálogo, usa BUSCARV o, en Excel 365 y 2021, BUSCARX.

Resaltar coincidencias y diferencias con formato condicional

Si prefieres ver colores en lugar de una columna auxiliar, el formato condicional es ideal.

Marcar los valores que están en las dos columnas

  1. Selecciona A2:B7.
  2. Ve a Inicio › Formato condicional › Reglas para resaltar celdas › Valores duplicados.
  3. Elige el color y pulsa Aceptar.

Excel colorea todo valor que aparece más de una vez en la selección. Ojo: si una misma columna tiene repetidos, también se marcarán, aunque no estén en la otra.

Marcar solo lo que falta en la otra columna

  1. Selecciona A2:A7, empezando por A2.
  2. Ve a Inicio › Formato condicional › Nueva regla.
  3. Elige Utilice una fórmula que determine las celdas para aplicar formato.
  4. Escribe la fórmula siguiente, pulsa Formato, elige un relleno y acepta.

=CONTAR.SI($B$2:$B$7;A2)=0

Solo se colorearán P-105 y P-106. Repite el proceso en B2:B7 con =CONTAR.SI($A$2:$A$7;B2)=0 para marcar P-107 y P-108.

Extraer las diferencias en una lista aparte

En Excel 365 y Excel 2021, la función FILTRAR devuelve directamente la lista de valores que cumplen una condición. Para obtener los códigos del inventario que no están en el catálogo, escribe en una celda vacía:

=FILTRAR(A2:A7;CONTAR.SI(B2:B7;A2:A7)=0;"Ninguno")

El resultado se desborda hacia abajo con P-105 y P-106. Para las coincidencias, cambia la condición:

=FILTRAR(A2:A7;CONTAR.SI(B2:B7;A2:A7)>0;"Ninguno")

Si los datos crecen, convierte el rango en una tabla con Ctrl+T o amplía los rangos. Evita incluir filas vacías: CONTAR.SI también compara celdas en blanco y podría añadir resultados vacíos. En versiones anteriores, usa la columna auxiliar con CONTAR.SI y aplica un filtro sobre ella desde Datos › Filtro.

Errores habituales al comparar columnas

  • Espacios invisibles. «P-101 » con un espacio al final no es igual a «P-101». Limpia antes con =ESPACIOS(A2) en una columna auxiliar.
  • Números guardados como texto. 101 como número y «101» como texto no coinciden. Si ves un triángulo verde en la esquina de la celda, conviértelos con la opción Convertir en número.
  • Comodines en los datos. CONTAR.SI interpreta * y ? como comodines. Si tus códigos los contienen, usa COINCIDIR con una igualdad o IGUAL.
  • Olvidar los signos $. Sin referencias absolutas, el rango se desplaza al copiar la fórmula y los resultados dejan de ser fiables.
  • Duplicados dentro de la misma lista. Distorsionan los recuentos y el formato de valores duplicados. Si una columna tiene repetidos, elimínalos primero con nuestra herramienta para quitar duplicados.

Cuando necesitas comparar archivos completos

Las fórmulas funcionan muy bien con dos columnas de la misma hoja. Pero si lo que tienes son dos versiones de un archivo, por ejemplo la lista de precios del mes anterior y la actual, con muchas columnas y filas, montar fórmulas para cada campo se vuelve pesado. En ese caso puedes usar nuestra herramienta gratuita para comparar archivos Excel: subes el archivo original y el modificado y obtienes un nuevo archivo con los cambios entre ambos, sin escribir ninguna fórmula.

Conclusión

Para comparar dos columnas, lo primero es decidir si importa la posición. Si las filas están alineadas, basta con =A2=B2 o con SI. Si son listas independientes, CONTAR.SI te dice qué está en las dos y qué falta, el formato condicional lo hace visible y FILTRAR te da las diferencias en una lista limpia. Y antes de nada, revisa espacios, tipos de dato y duplicados: son la causa de la mayoría de resultados extraños.

Preguntas frecuentes

¿Cómo comparo dos columnas que están en hojas distintas?

Igual, pero incluyendo el nombre de la hoja en el rango. Por ejemplo: =CONTAR.SI(Hoja2!$A$2:$A$500;A2). Si el nombre de la hoja tiene espacios, va entre comillas simples: 'Lista web'!$A$2:$A$500.

¿Por qué dos valores que parecen iguales salen como distintos?

Casi siempre por espacios al principio o al final, caracteres no imprimibles o porque uno es número y el otro texto. Prueba con =LARGO(A2) para ver cuántos caracteres tiene realmente cada celda.

¿CONTAR.SI distingue mayúsculas y minúsculas?

No. «cliente a» y «Cliente A» cuentan como iguales. Si necesitas distinguirlos, usa IGUAL en una comparación fila a fila.

¿Puedo comparar más de una columna a la vez, como nombre y correo?

Sí. Usa CONTAR.SI.CONJUNTO con un par de condiciones, por ejemplo =CONTAR.SI.CONJUNTO($E$2:$E$500;A2;$F$2:$F$500;B2), que cuenta las filas donde coinciden a la vez los dos campos.

Prueba nuestras herramientas gratuitas

Compara, convierte, combina y limpia tus hojas de cálculo desde el navegador, sin instalar nada.

Ver todas las herramientas
Scroll to Top