Copiar rango de celdas entre 2 ficheros

Hola,
Quería saber el código VB necesario para crear una macro que me copie un rango de celdas del fichero origen a otro destino. La macro se ejecutara en el fichero destino.
Datos origen:
origen.xls
hoja_origen
rango A1:C3
Datos destino:
destino.xls
hoja_destino
rango D2:F4
He probado con:
Workbooks.Open Filename:="C:\origen.xls", ReadOnly:=True
Excel.Workbooks("destino.xls").Sheets("hoja_destino").Range("D2:F4") = Excel.Workbooks("origen.xls").Sheets("hoja_origen").Range("A1:C3")
Excel.Workbooks("origen.xls").Close
Pero me da error
Muchísimas gracias

1 respuesta

Respuesta
1
Para copiar un rango utilizá el método Copy, de esta manera:
Workbooks("origen.xls").Sheets("hoja_origen").Range("A1:C3").Copy Destination:=Workbooks("destino.xls").Sheets("hoja_destino").Range("D2")
Fíjate que solo coloco la primer celda de destino.
Si te marca error, presiona el botón Depurar para que te indique cuál es la línea y el nro de error. Seguramente se trata de que no coinciden el nombre de los libros o de sus hojas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas