Como copiar archivos de un libro a otro mediante una macro y sin sobreescribir filas

Estoy utilizando hace poco Visual Basic por lo cual me trabe con este problema.

Les resumo en un libro tengo una planilla en la cual al completar todos los datos, cuando apreto un botón se me copian 3 datos y se me pasan a otro archivo en determinado lugar.

Mi problema es que al copiar los datos de un libro a otro se me sobreescriben los datos.

Así tengo Hecha mi macro:

Sub stock()

Dim Gabardina6OZ As Workbook
Dim Gabardina8OZ As Workbook

If Range("B22") = "x" And Range("K4") = "x" Then
Set Gabardina6OZ = Workbooks.Open("\\GLADYS-PC\Users\Public\Administración\Stock\Stock Gabardina 6OZ(1).xlsm")
Workbooks("Producción(1).xlsm").Worksheets("hoja1").Range("J2").Copy Destination:=Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("E2")
Workbooks("Producción(1).xlsm").Worksheets("hoja1").Range("B2").Copy Destination:=Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("F2")
Workbooks("Producción(1).xlsm").Worksheets("hoja1").Range("B25").Copy Destination:=Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("G2")

1 respuesta

Respuesta
1

En cada línea del copy debes buscar la primer celda vacía.

Hay varios modos, el más común sería buscar la primer celda en la col que siempre tendrá datos hasta el final, digamos A:

filx = Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("A" & Rows.count).End(xlup).Row +1

Y luego en cada instrucción reemplaza el 2 por la variable 'filx':

Destination:=Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("E" & filx)  

Y así en las otras 2 :

Destination:=Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("F" & filx)

Destination:=Workbooks("Stock Gabardina 6OZ(1).xlsm").Worksheets("Azul Marino"). Range("G" & filx)

Si te queda alguna duda en este tema comenta... sino valora la respuesta para darla por cerrada.

Sdos!

Comenta o valora, gracias!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas