Imprimir página | Cerrar ventana

Macro para importar datos

Impreso de: Foro de Access y VBA
Categoría: Otros de Microsoft: Windows y Office
Nombre del foro: Excel
Descripción del foro: Foro de Excel y VBA de Excel
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=83843
Fecha de impresión: 24/Abril/2019 a las 00:01


Tema: Macro para importar datos
Publicado por: jorgecr21
Asunto: Macro para importar datos
Fecha de publicación: 14/Julio/2018 a las 00:42
Holla Foro. Estoy aprendiendo a hacer macros y realmente me podrían ayudar mucho Wink

Necesito una macro que me permita importar datos de otro archivo y los pegue en determinada hoja y celda de mi hoja de trabajo que se llama (Import).

Aspectos importantes:
1) El archivo del cual voy a obtener los datos no siempre se va a llamar igual por eso necesito que me permita seleccionarlo durante la ejecución de la macro
2) El rango a copiar en ese archivo es: A19:K531
3. Debe ser pegado en mi archivo de trabajo en la hoja llamada "Imput" en las celdas A19:K531 pero como valores

Este es el codigo que llevo, pero me da error a la hora de pegar

Sub Import()
Dim dir As String
MsgBox "Seleccionar archivo"
dir = Application.GetOpenFilename(fileFilter:="Excel Files (*.xls*), *.xls*") 'selecionas el libro
Workbooks.Open Filename:=(dir)

    Range("A19:K531").Select
    Selection.Copy
    ActiveWorkbook.Close SaveChanges:=False
    
    Windows("Marco-Chile.xlsm").Activate
    Sheets("Imput").Select
    Range("A19").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    
End Sub



Respuestas:
Publicado por: pitxiku
Fecha de publicación: 14/Julio/2018 a las 13:00
Macro, Workbooks, rangos,... ¿esto es Access o Excel?


Publicado por: jorgecr21
Fecha de publicación: 14/Julio/2018 a las 14:21
Es Excel, Macros


Publicado por: Jaime Andrés Endo
Fecha de publicación: 06/Agosto/2018 a las 16:28
Hola Jorgecr21,

Yo también he estado haciendo algo parecido a lo que propones, y lo que tengo es esto.....

Fecha = Day(ActiveSheet.Cells(20, 3)) & "-" & _
  Month(ActiveSheet.Cells(20, 3)) & "-" & Year(ActiveSheet.Cells(20, 3))

  Fecha_2 = Day(ActiveSheet.Cells(20, 4)) & "-" & Month(ActiveSheet.Cells(20, 4)) & "-" & Year(ActiveSheet.Cells(20, 4))

  Nombre = ActiveSheet.Cells(22, 2) & "-Del-" & Fecha & "-Al-" & Fecha_2 & ".xlsx"

  Set NuevoLibro = Workbooks.Add
  With NuevoLibro
   .Title = Nombre
   .SaveAs Filename:=ThisWorkbook.Path & "\" & "Banco_de_Occidente" & "\" & "Mensual" & "\" & Nombre
  End With

  " Workbooks(Nombre).Worksheets("Hoja1").Range("A1:E129") = Workbooks("Programa_Finanzas.xlsm").Worksheets("Banco_de_Occidente").Range("B18:F146").value
  NuevoLibro.Save "

La parte que esta encerrada entre comillas es la que selecciono el rango de las celdas, y las hojas activas del archivo del que voy a copiar además de seleccionar el rango de la hoja del archivo destino

Espero te sirva como a mi me sirvió

Saludos



Imprimir página | Cerrar ventana