5 formas de combinar hojas de Google, añadir columnas con datos relacionados e insertar filas no coincidentes

  • Compartir Este
Michael Brown

¿Sabías que cuando fusionas 2 hojas de Google no sólo puedes actualizar registros en una columna, sino también extraer columnas relacionadas completas e incluso filas no coincidentes? Hoy te mostraré cómo se hace con las funciones VLOOKUP, INDEX/MATCH, QUERY y el complemento Merge Sheets.

La última vez que hablé sobre la fusión de 2 hojas de Google, compartí formas de hacer coincidir & actualizar datos. Esta vez, seguiremos actualizando celdas, pero también sacaremos otras columnas relacionadas y filas no coincidentes.

    Aquí está mi tabla de consulta. Hoy voy a tomar todos los datos necesarios de ella:

    Esta vez se ha hecho más grande: tiene dos columnas adicionales con los nombres de los vendedores y sus valoraciones. Actualizaré la columna Stock con esta información en otra tabla y también sacaré los vendedores. Bueno, quizá también las valoraciones :)

    Como de costumbre, utilizaré algunas funciones y un complemento especial para el trabajo.

    Combinar hojas de Google & añadir columnas relacionadas utilizando VLOOKUP

    ¿Recuerdas el VLOOKUP de Google Sheets? Lo utilicé en mi artículo anterior para hacer coincidir datos y actualizar algunas celdas.

    Si esta función todavía te asusta, ya es hora de que te enfrentes a ella y la aprendas de una vez por todas, porque yo también voy a utilizarla hoy :)

    Consejo: si buscas una solución rápida para ahorrar tiempo, conoce ahora mismo Merge Sheets.

    Hagamos una rápida recapitulación de la sintaxis de las fórmulas:

    =VLOOKUP(clave_busqueda, rango, índice, [is_sorted])
    • buscar_clave es lo que está buscando.
    • gama es lo que estás buscando.
    • índice es el número de la columna de la que devolver el valor.
    • [is_sorted] es completamente opcional e indica si la columna clave está ordenada.

    Sugerencia: en nuestro blog hay un tutorial entero dedicado a Google Sheets VLOOKUP, no dudes en echarle un vistazo.

    Cuando fusioné dos hojas de Google y simplemente actualicé los datos de la columna Stock, utilicé esta fórmula VLOOKUP:

    =ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Hoja1!$B$2:$D$10,2,FALSE),""))

    IFERROR se aseguraba de que no había errores en las celdas sin coincidencias y ARRAYFORMULA procesaba toda la columna a la vez.

    ¿Qué cambios tengo que hacer para que los proveedores también aparezcan como una nueva columna de la tabla de consulta?

    Bueno, ya que es el índice que le dice a Google Sheets VLOOKUP de qué columna debe tomar los datos, es seguro decir que es la que necesita ajustes.

    La forma más sencilla sería simplemente copiar la fórmula en la columna vecina y aumentar su índice en uno (sustituya 2 con 3 ):

    =ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Hoja1!$B$2:$D$10,3,FALSE),""))

    Sin embargo, tendrás que insertar la misma fórmula con un índice diferente tantas veces como columnas adicionales quieras obtener.

    Afortunadamente, existe una alternativa mejor: crear matrices. Las matrices te permiten combinar todas las columnas que quieras extraer en un índice.

    Cuando se crea una matriz en las Hojas de cálculo de Google, los valores o las referencias a celdas o rangos se indican entre paréntesis, por ejemplo ={1, 2, 3} o ={1; 2; 3}

    La disposición de estos registros en una hoja depende del delimitador:

    • Si utiliza punto y coma, los números ocuparán filas diferentes dentro de una columna:

  • Si utiliza una coma, esos números aparecerán en columnas separadas en una fila:
  • Esto último es exactamente lo que hay que hacer en el argumento del índice VLOOKUP de Google Sheets.

    Como fusiono hojas de Google, actualizo la 2ª columna y saco la 3ª, necesito crear un array con estas columnas: {2, 3} :

    =ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Hoja1!$B$2:$D$10,{2,3},FALSE),""))

    De este modo, una fórmula VLOOKUP de Google Sheets coteja los nombres, actualiza la información de las existencias y añade los proveedores relacionados en una columna adyacente vacía.

    Match & fusionar hojas y añadir columnas con INDEX MATCH

    Estas dos funciones compiten con VLOOKUP, ya que evitan sus limitaciones a la hora de combinar hojas de Google.

    Consejo: Conoce INDEX MATCH para Google Sheets en este tutorial.

    Permítame empezar recordándole la fórmula que simplemente fusiona una columna basándose en las coincidencias:

    =IFERROR(INDEX(Hoja1!$C$1:$C$10,MATCH(B2,Hoja1!$B$1:$B$10,0)),"")

    En esta fórmula, Hoja1!$C$1:$C$10 es una columna con los valores que necesita siempre que Hoja1 $B$1:$B$10 cumple el mismo valor que en B2 en la tabla actual.

    Teniendo en cuenta estos puntos, es Hoja1!$C$1:$C$10 que debe cambiar para no sólo combinar tablas y actualizar celdas, sino también añadir columnas.

    A diferencia del VLOOKUP de Google Sheets, aquí no hay nada del otro mundo. Sólo tienes que introducir el rango con todas las columnas necesarias: la que hay que actualizar y las demás que hay que añadir. En mi caso, será Hoja1!$C$1:$D$10 :

    =IFERROR(INDEX(Hoja1!$C$1:$D$10,MATCH(B2,Hoja1!$B$1:$B$10,0)),"")

    O puedo ampliar la gama a E10 para añadir 2 columnas, no sólo una:

    =IFERROR(INDEX(Hoja1!$C$1:$E$10,MATCH(B2,Hoja1!$B$1:$B$10,0)),"")

    Nota: los registros adicionales siempre se encuentran en las columnas vecinas. Si esas columnas tienen otros valores, la fórmula no los sobrescribirá, sino que mostrará un error #REF con la sugerencia correspondiente:

    Una vez que borres esas celdas o añadas nuevas columnas a la izquierda de ellas, aparecerán los resultados de la fórmula.

    Combinar hojas de Google, actualizar celdas & añadir columnas relacionadas - todo usando QUERY

    QUERY es una de las funciones más potentes de las hojas de cálculo de Google, por lo que no es de extrañar que vaya a utilizarla hoy para combinar algunas hojas de Google, actualizar celdas y añadir columnas adicionales al mismo tiempo.

    Esta función se diferencia de otras porque uno de sus argumentos utiliza un lenguaje de comandos.

    Consejo: si te preguntas cómo se utiliza la función QUERY de Google Sheets, visita esta entrada del blog.

    Recordemos primero la fórmula que actualiza las celdas:

    =IFERROR(QUERY(Hoja1!$A$2:$C$10, "select C where&QUERY!$B2:$B$10&""),"")

    Aquí QUERY mira la tabla con los datos requeridos en la Hoja1, hace coincidir las celdas de la columna B con mi nueva tabla actual, y fusiona estas hojas: extrae datos de la columna C para cada coincidencia. IFERROR mantiene el resultado libre de errores.

    Para añadir columnas adicionales para esos partidos, tiene que hacer 2 pequeños cambios en esta fórmula:

    1. lista todas las columnas imprescindibles para el seleccione mando:

      ...selecciona C,D,E...

    2. ampliar la gama para buscar en consecuencia:

      ...QUERY(Hoja1!$A$2:$E$10,...

    Aquí tienes la fórmula completa:

    =IFERROR(QUERY(Hoja1!$A$2:$E$10, "select C,D,E where&Hoja4!$B2:$B$10&""),"")

    Actualiza la columna de existencias y extrae 2 columnas adicionales de la tabla de consulta a esta tabla principal.

    Cómo añadir filas no coincidentes utilizando FILTRO + VLOOKUP

    Imagina esto: fusionas 2 hojas de Google, actualizas la información antigua con la nueva y obtienes nuevas columnas con valores extra relacionados.

    ¿Qué más podría hacer para tener una visión completa de los registros que tiene entre manos?

    De este modo, tendrá todos los valores en el mismo lugar: no sólo las coincidencias con la información relacionada actualizada, sino también las no coincidencias para que cuenten.

    Me ha sorprendido gratamente que el VLOOKUP de Google Sheets sepa hacerlo. Cuando se utiliza junto con la función FILTRO, fusiona las hojas de Google y añade también las filas que no coinciden.

    Consejo. Al final, también mostraré cómo un complemento hace lo mismo con una sola casilla de verificación.

    Los argumentos del FILTRO de Google Sheets son bastante claros:

    =FILTRO(rango, condición1, [condición2, ...])
    • gama son los datos que desea filtrar.
    • condición1 es una columna o una fila con un criterio de filtrado.
    • criterios2, criterios3, etc. son completamente opcionales. Utilícelos cuando necesite utilizar varios criterios.

    Consejo: en esta entrada del blog encontrarás más información sobre la función FILTRO de Google Sheets.

    Entonces, ¿cómo se llevan estas dos funciones y fusionan las hojas de Google? Bueno, FILTER devuelve los datos basándose en los criterios de filtrado creados por VLOOKUP.

    Mira esta fórmula:

    =FILTER(Hoja1!$A$2:$E$10,ISERROR(VLOOKUP(Hoja1!$B$2:$B$10,$B$2:$C$10,2,FALSE)=1))

    Analiza 2 tablas de Google en busca de coincidencias y extrae las filas no coincidentes de una tabla a la otra:

    Te explico cómo funciona:

    1. FILTRO va a la hoja de búsqueda (una tabla con todos los datos - Hoja1!$A$2:$E$10 ) y utiliza VLOOKUP para obtener las filas correctas.
    2. VLOOKUP toma los nombres de los elementos de la columna B en esa hoja de búsqueda y los compara con los nombres de mi tabla actual. Si no hay coincidencia, VLOOKUP dice que hay un error.
    3. ISERROR marca cada uno de estos errores con 1, indicando a FILTER que tome esta fila en otra hoja.

    Como resultado, la fórmula extrae 3 filas adicionales para esas bayas que no aparecen en mi tabla principal.

    No es tan complicado una vez que se juega un poco con este método :)

    Pero si no quieres perder el tiempo en esto, hay una forma mejor y más rápida - sin una sola función y fórmula.

    Combinar datos sin fórmulas - Complemento para combinar hojas de cálculo

    El complemento Combinar hojas abarca las 3 posibilidades a la hora de combinar hojas de Google:

    • actualiza las celdas relacionadas en función de las coincidencias
    • añade nuevas columnas para esas coincidencias
    • inserta filas con registros no coincidentes

    Para evitar cualquier confusión, el proceso se divide en 5 sencillos pasos :

    • Los dos primeros están donde seleccione sus mesas aunque estén en hojas de cálculo diferentes.
    • En el 3d , usted debe elegir columna(s) clave que debe comprobarse si coinciden.
    • En 4º paso te permite establecer las columnas a actualizar con nuevos récords o añadir de una hoja a otra:

  • Por último, el 5º paso tiene esa casilla que hacer que aparezcan todas las filas no coincidentes al final de la tabla actual:
  • Pasaron unos segundos hasta que pude ver el resultado:

    Instala Merge Sheets desde la tienda de Google Sheets y verás que procesa tablas más grandes con la misma rapidez. Gracias a Merge Sheets, tendrás más tiempo para los asuntos importantes.

    También te dejo este vídeo de demostración de 3 minutos para que te decidas :)

    Hoja de cálculo con ejemplos de fórmulas

    Combinar hojas de Google, añadir columnas relacionadas & filas no coincidentes - ejemplos de fórmulas (hacer una copia de esta hoja de cálculo)

    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.