Copiar celas da un libro a otro

Hola!
Estoy trabajando en una planilla que se alimenta de otro libro de Excel, que se encuentra bloqueado para escribir, para cargar sus datos.
Lo que necesitaría es una macro que copie datos del libro A y los copie en el libro B.
(Luego el libro B con estos datos calculará los resultados correspondientes) entonces ahora necesitaré copiar los resultados del libro B y pegarlos en el libro A.
Resumiendo, necesito copiar y pegar desde A a B y viceversa.
Gracias

1 respuesta

Respuesta
1
Puedes utilizar la grabadora de macros para realizar esta tarea, esto lo encontrarás en:
-Herramientas > Macros > Grabar Macro.
Una te vas al libro donde están los datos, los seleccionas y los copias y acto seguido te diriges al libro donde quieres copiarlos y los pegas donde tu quieras.
Una vez estén copiados y estén los datos calculados, seleccionas los resultados, los copias y te vas al libro donde los quieres pegar, entonces te sitúas en la celda donde quieres pegarlos y harás botón derecho > pegado especial, y seleccionas valores.
Después vuelves a la hoja origen y paras la grabadora de macros en herramientas > Macros > Detener Macro.
Esto es todo, si tienes alguna duda ya sabes donde estamos.
Hola!
Eso si pero el problema es que cuando lo hago de esa forma necesito tener los dos libros abiertos.
La idea es que los tome directamente desde archivo o sino crear una macro que abra el libro al pedir esa acción. ¿Sabés cómo se hace eso?
Gracias!
Vamos a ver, se me ocurre lo siguiente:
Primero vamos a suponer que tanto el libro A como el libro B están en c, es decir, las ubicaciones de los libros serán:
Libro A - c:\libroA.xls
Libro B - c:\libroB.xls
- Ahora vamos a poner un botón de comando en el libro A, vamos a dar en el botón de comando con el botón derecho y nos vamos a propiedades.
- Ahora dentro de las propiedades del botón vamos a cambiar el caption y vamos a poner CALCULAR (puedes poner lo que tu quieras).
- Después nos vamos a donde pone Name y le cambiamos CommandButton1 por cmb_calcular
Después de esto, cerramos la ventana de propiedades del botón, y damos doble click para empezar a programar el botón.
Aclaraciones:
- Vamos a suponer que los datos que se quieren copiar del libro A están en el rango A5:C20
- Vamos a suponer también que en el libro B las formular para calcular los resultados están en el rango D5:D20
- Vamos a suponer que los datos y las fórmulas, están el la hoja 1 de cada libro.
Ahora vamos a programar el botón: Damos doble click en el botón y nos aparece el cuadro para escribir el código:
Sub cmb_calcular_click()
'Nos vamos a la hoja donde están los datos, seleccionamos el rango y lo copiamos:
Range("A5:C20").Select
Selection.Copy
'Abrimos el libro B
Workbooks.Open filename:="c:\libroB.xls"
'Nos vamos a la celda A5 de la hoja1 del libro B para pegar los datos:
Workbooks("libroB.xls").Sheets("Hoja1").Range("A5").Select
'Pegamos los datos:
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
'Ahora guardamos los datos del libro activo, es decir, el B.
ActiveWorkbook.Save   
'Ahora seleccionamos el rango D5:D20 del libro B y lo copiamos
Workbooks("libroB.xls").Sheets("hoja1).Range("d5:d20").Select
Selection.Copy
'Ahora volvemos a la hoja1, pero en este caso del libro A
Workbooks("libroA.xls").Sheets("hoja1").Activate
'Nos vamos a la celda D5 del libro activo, en este caso el A
Workbooks("libroA.xls").Sheets("hoja1").Range("d5").Select
'Ahora copiamos los pegamos del libro B en el libro A
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
'Ahora guardamos el Libro A
ActiveWorkbook.Save
'Ahora cerramos la aplicación de Excel.
Appliction.Close
End Sub
Prueba con esto, a ver si te sirve.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas