vincular varias una pasar para otra macro jalar informacion hojas hoja extraer enlazar datos cómo copiar como automaticamente actualizar excel excel-formula vlookup

varias - pasar datos de una hoja de excel a otra automaticamente



Compilando diferentes hojas de Excel SIN macro (1)

Tengo 4 hojas diferentes con datos similares, pero en diferentes formatos. Como ejemplo:

Hoja A

Date Buy-In Game Winnings 11/25/2013 $10 NFL $18 11/28/2013 $10 NBA $0

Hoja B

Sport Buy-In Date Winnings NFL $5 11/26/2013 $9 NBA $2 11/29/2013 $3.60

Hoja C

Buy-In Game Date Winnings $5 NFL 11/24/2013 $9 $2 NFL 11/21/2013 $3.60

Hoja D

Sport Buy-In Date Winnings NFL $5 11/20/2013 $9 NBA $2 11/22/2013 $3.60

Quiero combinarlos en una hoja sin usar una macro. Entonces la hoja combinada se vería así:

Hoja combinada

Game Date Buy-In Winnings NFL 11/20/2013 $5 $9 NFL 11/21/2013 $2 $3.60 NBA 11/22/2013 $2 $3.60 NFL 11/24/2013 $5 $9 NFL 11/25/2013 $10 $18 NFL 11/26/2013 $5 $9 NBA 11/28/2013 $10 $0 NBA 11/29/2013 $2 $3.60

¿Es esto factible o incluso posible?


¡Puede hacer esto usando la función INDIRECT y una tabla de soporte!

Primero necesita construir una pequeña tabla de soporte que guarde los parámetros para cada hoja de entrada:

  • En la columna B, use la siguiente fórmula para determinar el número de filas: =COUNTA(INDIRECT("''"&A5&"''!A:A"))-1 .
  • Para el rango C5: F8, utilicé la fórmula =MATCH(C$4,INDIRECT("''"&$A5&"''!1:1"),0) - esto funcionará para todas las columnas que tienen la columna "adecuada" nombre: solo se deben ingresar C6 y C8 manualmente, ya que usaste "Deportes" en lugar de "Juego" aquí

Con base en esta tabla de soporte, puede construir su tabla de consolidación. Esto tiene dos secciones, de nuevo 3 columnas de soporte para determinar la hoja y el número de fila, y las columnas de datos:

Use las siguientes fórmulas:

  • Columna H: =IF(ISTEXT(H4),1,IF(I5=1,H4+1,H4)) Lógica: comience con 1 y aumente en 1 cada vez que la Id de la fila se restablezca a uno - de lo contrario, mantenga la ID de la hoja desde arriba
  • Columna I: =IF(ISTEXT(I4),1,IF(I4=J4,1,I4+1)) Lógica: comience en 1 y aumente en 1 hasta que la ID de fila en la fila de arriba sea igual al número de filas en la sábana desde arriba. En el caso, reinicie a 1
    • Columna J: =INDEX($B$5:$B$8,H5) - obtenga el número de filas para la hoja actual de la tabla de configuración
    • Columna K: N: =OFFSET(INDIRECT("''"&INDEX($A$5:$A$8,$H5)&"''!A1"),$I5,INDEX(C$5:C$8,$H5)-1) - ¡Aquí es donde sucede la magia! ;-) Lógica: Obtenga el nombre de la hoja de la tabla config, use esto en la función INDIRECTO para recuperar la celda A1 de esa hoja. A continuación, se compensa con la Id. De fila de la columna de soporte y con la Id. De columna de esa hoja recuperada nuevamente desde la tabla de configuración.

¡Vea el ejemplo implementado en este archivo !