Macro para abrir un archivo y copiar la información al archivo que contiene la macro

Necesito ayuda soy nuevo en esto y necesito una macro que me permita abrir un archivo (el cual puede variar el nombre) y copiar la información que contiene la hoja 1 en un rango de la columna A a la P, a la Hoja 2 del archivo que contiene la macro.

1 respuesta

Respuesta
3

Dejo una macro de ejemplo, con comentarios para que puedas ajustar los detalles que no están indicados en tu consulta:

Sub capturaLibro()
'x Elsamatilde
'guardamos nombre de libro actual para el pase de datos
libro1 = ActiveWorkbook.Name
'se busca el libro sin confirmar la extensión  ---- AJUSTAR
libroN = Application.GetOpenFilename("Excel files, *.xls*")
'si la variable está vacía significa que cancelamos la ventana de diálogo
If libroN = False Then
    MsgBox "No se ha seleccionado ningún libro, el proceso se cancela.", , "ATENCIÓN"
    Exit Sub
End If
'se abre el libro elegido
    Workbooks.Open libroN
    'ahora es el libro activo. copiamos el rango ---- AJUSTAR
    ActiveWorkbook.Sheets("Hoja1").Select
    'se pega en el libro de origen a partir de A1 ----AJSTAR
    ActiveSheet.Range("A1:P" & Range("A" & Rows.Count).End(xlUp).Row).Copy _
    Destination:=Workbooks(libro1).Sheets("Hoja2").Range("A1")
'opcional: cerrar el libro buscado sin guardar los cambios.
ActiveWorkbook.Close False
MsgBox "Fin de la captura", , "INFORMACIÓN"
End Sub

Ajusta si hiciera falta las referencias indicadas.

Si esta respuesta resuelve tu consulta no olvides valorarla (Excelente o buena), sino comenta con más detalles.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas