Pasar datos de una columna de una hoja a otra

Tengo esta subrutina la cual estoy usando para coger cada uno de los datos de una hoja y pasarlos a otras:

Sheets(HojaIni).Select

j = 2
For i = 4 To Range("D" & Rows.Count).End(xlUp).Row
Worksheets("Base").Cells(j, "D") = Cells(i, "D")
j = j + 1
Next

PERO esto solo pasa una vez por que al hacer el mismo procedimiento me sobreescribe los valores en DE y creo que es por este paso Worksheets("Base"). Cells(j, "D"), por que la instrucción esta para la columna DE más no para el ultimo espacio libre en la columna DE, ¿cómo podría modificar la rutina para que me funcione bien?

1 Respuesta

Respuesta
1

Aquí tenés 2 variables: "j" e "i"

"j" Empieza en 2 y es la que se usa para indicar en qué fila de la hoja BAse debe colocar el dato, y se incrementa en cada pase. Así en la 2da vez que se ejecute colocará el dato en fila 3, luego en 4 y así.

Entonces j no debe empezar en 2, sino en la primer fila libre.

j= Worksheets("Base").Range("D" & rows.count).end(xlup).row+1

¡Gracias! Elsa, era perfectamente lo que estaba buscando, estaba enredado en eso, y yo que pensaba que era en este código Worksheets("Base").Cells(j, "D"), muchas gracias por enseñarme y tu pronta respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas