Macro que copie y pegue datos de varias hojas en una sola

Hola expertos preciso de su ayuda, tengo el siguiente problema

necesito crear una macro que me copie los datos de la hoja2 y hoja3 y hoja4 y hoja5 (re presentan semanas) en la hoja1

siempre y cuando se cumpla una condición que es la siguiente

En la hoja uno tengo un listado en la columna A de 500 números consecutivos y en la columna B,C,D y E códigos

En las demás hojas también tengo en la columna A números que no siempre son consecutivos a veces faltan algunos y en la columna D los códigos

Entonces necesito que se copien en la hoja1 los datos de la columna D de las demás hojas siempre y cuando correspondan a su respectivo numero, en caso de que no exista el código para ese numero que ponga un cero

por ejemplo

hoja1

A B C D E

Nro código código código código

1001 A25S 0 78uy 1256

En este caso en la columna C(segunda semana) no tengo código para ese numero

Muchas Gracias espero que me entiendan el planteo.

1 respuesta

Respuesta
1

Puede ser con fórmulas.

En la hoja1, columna B, pones esta fórmula

=SI.ERROR(BUSCARV($A2,Hoja2!$A:$D,4,0),0)

En la columna C esta fórmula

=SI.ERROR(BUSCARV($A2,Hoja3!$A:$D,4,0),0)

En la columna D esta fórmula
=SI.ERROR(BUSCARV($A2,Hoja4!$A:$D,4,0),0)

En la columna E esta fórmula
=SI.ERROR(BUSCARV($A2,Hoja5!$A:$D,4,0),0)

Y copias las 4 fórmulas en todos los 500 números.

Revísalo y si aún así prefieres la macro, igual con todo gusto te la envío.

Experto, cuando pego las formulas me indica que existe un error en la misma, intente darme cuenta cual era el error pero no lo pude sacar, si no le es mucha molestia podrías revisarlas.

Seguro que debe ser algo sencillo disculpe mi ignorancia.

Gracias

En la fórmula cambia las comas (,) por punto y coma(;)

¿Qué versión de excel tienes?

Experto, cuando pego las formulas me indica que existe un error en la misma, intente darme cuenta cual era el error pero no lo pude sacar, si no le es mucha molestia podrías revisarlas.

Seguro que debe ser algo sencillo disculpe mi ignorancia.

La pude corregir

=SI.ERROR(BUSCARV($A2;Hoja2!$A:$D;4,0);0)

pero me copia el ultimo valor de la columna D de la hoja2 en todos los números

asi me queda

A B
Nro código
1001 A25S

1002 A25S
1003 A25S

Eso fue lo que pediste: "necesito que se copien en la hoja1 los datos de la columna D de las demás hojas siempre y cuando correspondan a su respectivo numero, en caso de que no exista el código para ese numero que ponga un cero"

Lo que te está haciendo es:

En la hoja1 columna B pone el valor D de la hoja2.

En la hoja1 columna C pone el valor D de la hoja3

En la hoja1 columna D pone el valor D de la hoja4

En la hoja1 columna E pone el valor D de la hoja5

Revisa que en la celda B3 la fórmula haya cambiado a :

=SI.ERROR(BUSCARV($A3,Hoja2!$A:$D,4,0),0)

En la celda B4 la fórmula debe ser

=SI.ERROR(BUSCARV($A4,Hoja2!$A:$D,4,0),0)

Notarás que el número después de $A va cambiando con el número de línea.

Revísala y me dices.

Saludos. Dam

perdon no me exprese bien, voy a hacer un ejemplo gráfico:

asi me esta quedando la planilla:

hoja1

A B
Nro código estas formulas estoy usando
1001 A25S =SI.ERROR(BUSCARV($A2;Hoja2!$A:$D;4,0);0)
1002 A25S =SI.ERROR(BUSCARV($A3;Hoja2!$A:$D;4,0);0)
1003 A25S =SI.ERROR(BUSCARV($A4;Hoja2!$A:$D;4,0);0)

hoja2

A D
Nro código
1001 2223
1002 2223
1003 A25S

lo que pretendo es que quede asi:

hoja1

A B
Nro código
1001 2223
1002 2223
1003 A25S

1004 0

1005 A25S

hoja2
A D
Nro código
1001 2223
1002 2223
1003 A25S

1005 A25S

muchas gracias por la ayuda

Si me quedó claro desde el principio, lo que no entiendo es por qué falla la fórmula.

Te mando otra, para ver como funciona:

=SI(ESERROR(BUSCARV(A2;Hoja2!A:D;4;0));0;BUSCARV(A2;Hoja2!A:D;4;0))

¿Tus números empiezan a partir de la fila 2?

EXCELENTE!!!!!

LA VERDAD QUE ME PONE MUY CONTENTO QUE EXISTA UN LUGAR COMO ESTE EN LA WEB, MUCHAS GRACIAS DAM!!

TE AÑADÍ COMO MI EXPERTO FAVORITO Y TE DI LA MÁXIMA CALIFICACIÓN.

UN ABRAZO, KWAN

(SI LOS NÚMEROS EMPIEZAN A PARTIR DE LA FILA 2)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas