Macro para importar una Sheet de otro libro

Necesito una macro, que al apretar un Botón me salga el típico desplegable, para buscar un archivo y que pueda seleccionar una pestaña de un archivo de excel y los datos de estas o el Rango seleccionado me lo pegue en la pestaña que tengo abierta y/o en la celda donde estoy situado de la hoja de calculo inicial.

1 respuesta

Respuesta
1

Te anexo la macro

Sub CopiaRangoOtroLibro()
'Por.Dante Amor
    Set l1 = ThisWorkbook
    Set h1 = l1.ActiveSheet
    Set c1 = ActiveCell
    '
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "Seleccione archivo de excel"
        .Filters.Clear
        .Filters.Add "Archivos excel", "*.xls*"
        .AllowMultiSelect = False
        .InitialFileName = l1.Path & "\"
        If Not .Show Then Exit Sub
        '
        Workbooks.Open .SelectedItems.Item(1)
        Set l2 = ActiveWorkbook
        variable = l2.Name
        With Application
            Set libro2 = .InputBox("SELECCIONA LA HOJA Y EL RANGO DE CELDAS A COPIAR ", "LIBRO2", _
                Default:="[" & variable & "]Hoja1!$A$1", Type:=8)
            If libro2 Is Nothing Then Exit Sub
        End With
        celda_2 = libro2.Address
        hoja_2 = libro2.Worksheet.Name
        libro_2 = libro2.Worksheet.Parent.Name
        Set h2 = l2.Sheets(hoja_2)
        h2.Range(celda_2).Copy
        H1. Range(c1. Address). PasteSpecial xlValues
 h1. Range(c1. Address). PasteSpecial xlFormats
 l2.Close False
        MsgBox "Rango copiado"
    End With
End Sub

Funciona de esta manera, selecciona la hoja y la celda donde quieres pegar. Ejecuta la macro, selecciona el archivo de excel, presiona Aceptar. Te aparece una venta para que selecciones la hoja y el rango que quieras copiar. Presiona Aceptar.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

¡Gracias! 

Dante Amor como siempre excelentísimo, un 100, muchas gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas