Cómo comparar dos columnas en Excel utilizando VLOOKUP

  • Compartir Este
Michael Brown

El tutorial muestra cómo utilizar la fórmula VLOOKUP en Excel para comparar dos columnas y obtener valores comunes (coincidencias) o encontrar datos que faltan (diferencias).

Cuando se tienen datos en dos listas diferentes, a menudo puede ser necesario compararlas para ver qué información falta en una de las listas o qué datos están presentes en ambas. La comparación puede hacerse de muchas formas distintas; el método que se utilice dependerá de lo que se quiera obtener exactamente de ella.

    Cómo comparar dos columnas en Excel usando VLOOKUP

    Cuando se tienen dos columnas de datos y se desea averiguar qué puntos de datos de una lista existen en la otra lista, se puede utilizar la función VLOOKUP para comparar las listas en busca de valores comunes.

    Para construir una fórmula VLOOKUP en su forma básica, esto es lo que necesita hacer:

    • Para buscar_valor (1er argumento), utiliza la celda superior de la Lista 1.
    • Para tabla_array (2º argumento), suministre la Lista 2 completa.
    • Para col_index_num (3er argumento), utilice 1 ya que sólo hay una columna en la matriz.
    • Para búsqueda_de_rango (4º argumento), establecer FALSE - coincidencia exacta.

    Supongamos que tiene los nombres de los participantes en la columna A (Lista 1) y los nombres de los que han pasado las rondas de clasificación en la columna B (Lista 2). Quiere comparar estas 2 listas para determinar qué participantes del Grupo A han pasado a la prueba principal. Para ello, utilice la siguiente fórmula.

    =VLOOKUP(A2, $C$2:$C$9, 1, FALSE)

    La fórmula va a la celda E2, y luego la arrastras hacia abajo a través de tantas celdas como elementos haya en la Lista 1.

    Tenga en cuenta que tabla_array se bloquea con referencias absolutas ($C$2:$C$9) para que permanezca constante al copiar la fórmula en las celdas inferiores.

    Como puede ver, los nombres de los atletas clasificados aparecen en la columna E. Para el resto de participantes, aparece un error #N/A que indica que sus nombres no están disponibles en la Lista 2.

    Disfraz #N/A errores

    La fórmula VLOOKUP descrita anteriormente cumple perfectamente su objetivo principal: devuelve valores comunes e identifica los puntos de datos que faltan. Sin embargo, proporciona un montón de errores #N/A, que pueden confundir a los usuarios inexpertos haciéndoles pensar que algo falla en la fórmula.

    Para sustituir los errores por celdas en blanco Utilice VLOOKUP en combinación con la función IFNA o IFERROR de esta forma:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")

    Nuestra fórmula mejorada devuelve una cadena vacía ("") en lugar de #N/A. También puede devolver su texto personalizado como "No en la lista 2", "No presente" o "No disponible". Por ejemplo:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "No está en la lista 2")

    Esta es la fórmula básica de VLOOKUP para comparar dos columnas en Excel. Dependiendo de su tarea particular, se puede modificar como se muestra en otros ejemplos.

    Comparar dos columnas en diferentes hojas de Excel utilizando VLOOKUP

    En la vida real, las columnas que debe comparar no siempre están en la misma hoja. En un conjunto de datos pequeño, puede intentar detectar las diferencias manualmente viendo dos hojas una al lado de la otra.

    Para buscar en otra hoja de cálculo o libro de trabajo con fórmulas, tiene que utilizar una referencia externa. La mejor práctica es empezar a escribir la fórmula en su hoja principal, luego cambiar a la otra hoja de cálculo y seleccionar la lista con el ratón: se añadirá automáticamente una referencia de rango adecuada a la fórmula.

    Suponiendo que la Lista 1 esté en la columna A en Hoja1 y la lista 2 está en la columna A en Hoja2 puede comparar dos columnas y encontrar coincidencias utilizando esta fórmula:

    =IFNA(VLOOKUP(A2, Hoja2!$A$2:$A$9, 1, FALSE), "")

    Para más información, consulte:

    • VLOOKUP desde otra hoja
    • VLOOKUP desde otro libro

    Comparar dos columnas y devolver valores comunes (coincidencias)

    En los ejemplos anteriores, discutimos una fórmula VLOOKUP en su forma más simple:

    =IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")

    El resultado de esa fórmula es una lista de valores que existen en ambas columnas y celdas en blanco en lugar de los valores no disponibles en la segunda columna.

    Para obtener una lista de valores comunes sin espacios en blanco, basta con añadir autofiltro a la columna resultante y filtrar los espacios en blanco.

    En Excel para Microsoft 365 y Excel 2021 que admiten matrices dinámicas, puede utilizar la función FILTRO para filtrar los espacios en blanco de forma dinámica. Para ello, utilice la fórmula IFNA VLOOKUP como criterio para FILTRO:

    =FILTRO(A2:A14, IFNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE), "")")

    Tenga en cuenta que en este caso suministramos toda la Lista 1 (A2:A14) al buscar_valor La función compara cada uno de los valores de búsqueda con la Lista 2 (C2:C9) y devuelve una matriz de coincidencias y errores #N/A que representan los valores que faltan. La función IFNA sustituye los errores por cadenas vacías y envía los resultados a la función FILTER, que filtra los espacios en blanco ("") y emite una matriz de coincidencias como resultado final.

    Como alternativa, puede utilizar la función ISNA para comprobar el resultado de VLOOKUP y filtrar los elementos cuya evaluación sea FALSE, es decir, los valores distintos de #N/A errores:

    =FILTRO(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))=FALSE)

    El mismo resultado puede obtenerse con la función XLOOKUP, lo que simplifica aún más la fórmula. Debido a la capacidad de XLOOKUP para gestionar internamente los errores #N/A (opcional if_not_found ), podemos prescindir del envoltorio IFNA o ISNA:

    =FILTRO(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")"")

    Comparar dos columnas y encontrar los valores que faltan (diferencias)

    Para comparar 2 columnas en Excel para encontrar diferencias, puede proceder de esta manera:

    1. Escribe la fórmula del núcleo para buscar el primer valor de la Lista 1 (A2) en la Lista 2 ($C$2:$C$9):

      VLOOKUP(A2, $C$2:$C$9, 1, FALSE)

    2. Anida la fórmula anterior en la función ISNA para comprobar si hay errores #N/A en la salida del VLOOKUP. En caso de error, ISNA devuelve TRUE, en caso contrario FALSE:

      ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE))

    3. Utilice la fórmula ISNA VLOOKUP para la prueba lógica de la función IF. Si la prueba se evalúa como TRUE (error #N/A), devuelva un valor de la Lista 1 en la misma fila. Si la prueba se evalúa como FALSE (se encuentra una coincidencia en la Lista 2), devuelva una cadena vacía.

    La fórmula completa tiene esta forma:

    =IF(ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE)), A2, "")

    Para deshacerse de los espacios en blanco, aplique el Filtro de Excel como se muestra en el ejemplo anterior.

    En Excel 365 y Excel 2021, puede hacer que la lista de resultados se filtre dinámicamente. Para ello, basta con colocar la fórmula ISNA VLOOKUP en el campo incluir de la función FILTER:

    =FILTRO(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))

    Otra forma es utilizar XLOOKUP para los criterios - la función devuelve cadenas vacías ("") para los puntos de datos que faltan, y usted filtra los valores de la Lista 1 para los que XLOOKUP devolvió cadenas vacías (=""):

    =FILTRO(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")="")

    Fórmula VLOOKUP para identificar coincidencias y diferencias entre dos columnas

    Si desea añadir etiquetas de texto a la primera lista indicando qué valores están disponibles en la segunda lista y cuáles no, utilice la fórmula VLOOKUP junto con las funciones IF e ISNA/ISERROR.

    Por ejemplo, para identificar los nombres que están tanto en la columna A como en la D y los que sólo están en la columna A, la fórmula es:

    =IF(ISNA(VLOOKUP(A2, $D$2:$D$9, 1, FALSE)), "No cualificado", "Cualificado")

    Aquí, la función ISNA captura los errores #N/A generados por VLOOKUP y pasa ese resultado intermedio a la función IF para que devuelva el texto especificado para los errores y otro texto para las búsquedas correctas.

    En este ejemplo, hemos utilizado las etiquetas "No cualificado"/"Cualificado", que son adecuadas para nuestro conjunto de datos de muestra. Puede sustituirlas por "No en lista 2"/"En lista 2", "No disponible"/"Disponible" o cualquier otra etiqueta que considere oportuna.

    Lo mejor es insertar esta fórmula en una columna adyacente a la Lista 1 y copiarla en tantas celdas como elementos tenga la lista.

    Otra forma de identificar coincidencias y diferencias en 2 columnas es utilizando la función MATCH:

    =IF(ISNA(MATCH(A2, $D$2:$D$9, 0)), "No en lista 2", "En lista 2")

    Comparar 2 columnas y devolver un valor de la tercera

    Cuando se trabaja con tablas que contienen datos relacionados, a veces puede ser necesario comparar dos columnas en dos tablas diferentes y devolver un valor coincidente de otra columna. De hecho, es el uso principal de la función VLOOKUP, el propósito para el que fue diseñada.

    Por ejemplo, para comparar los nombres de las columnas A y D de las dos tablas siguientes y devolver una hora de la columna E, la fórmula es:

    =VLOOKUP(A3, $D$3:$E$10, 2, FALSE)

    Para ocultar errores #N/A, utilice la solución probada: la función IFNA:

    =IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "")

    En lugar de espacios en blanco, puede devolver el texto que desee para los puntos de datos que falten; sólo tiene que escribirlo en el último argumento. Por ejemplo:

    =IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "No disponible")

    Además de VLOOKUP, la tarea puede realizarse con otras funciones de búsqueda.

    Personalmente, confiaría en una fórmula INDEX MATCH más flexible:

    =IFNA(INDEX($E$3:$E$10, MATCH(A3, $D$3:$D$10, 0)), "")

    O utiliza el sucesor moderno de VLOOKUP: la función XLOOKUP, disponible en Excel 365 y Excel 2021:

    =XLOOKUP(A3, $D$3:$D$10, $E$3:$E$10, "")

    Para obtener los nombres de los participantes cualificados del grupo A y sus resultados, basta con filtrar las celdas en blanco de la columna B:

    =FILTRO(A3:B15, B3:B15"")

    Herramientas de comparación

    Si realiza con frecuencia comparaciones de archivos o datos en Excel, estas herramientas inteligentes incluidas en nuestra Ultimate Suite pueden ahorrarle muchísimo tiempo.

    Comparar tablas: forma rápida de encontrar duplicados (coincidencias) y valores únicos (diferencias) en dos conjuntos de datos cualesquiera, como columnas, listas o tablas.

    Comparar dos hojas: encuentre y resalte las diferencias entre dos hojas de cálculo.

    Comparar varias hojas: encuentre y resalte las diferencias en varias hojas a la vez.

    Cuaderno de prácticas para descargar

    VLOOKUP en Excel para comparar columnas - ejemplos (.xlsx file)

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.