Macro para insertar varios txt en una misma hoja de excel

Tengo los siguientes txt: "Lima", "Arequipa", "Trujillo" y necesito insertarlos en una misma hoja de excel llamada "base" del archivo "Macro regiones" (cada txt insertado uno debajo de otro)

El detalle está en que cada txt puede tener una cantidad de filas distintas por lo que es preferible dejar un espacio de 500 filas entre cada txt insertado.

1 Respuesta

Respuesta
1

 H o l a:

Te anexo la macro

Sub InsertarVariosTxt()
'Por.Dante Amor
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Set l1 = ThisWorkbook
    Set h1 = l1.Sheets("Base")
    h1.Cells.Clear
    ruta = l1.Path & "\"
    txts = Array("Lima", "Arequipa", "Trujillo") 'Aquí puedes agregar más txt
    For i = LBound(txts) To UBound(txts)
        u = h1.UsedRange.Rows(h1.UsedRange.Rows.Count).Row + 1
        If Dir(ruta & txts(i) & ".txt") <> "" Then
            Set l2 = Workbooks.Open(ruta & txts(i) & ".txt")
            Set h2 = l2.Sheets(1)
            h2.UsedRange.Copy h1.Range("A" & u)
            l2.Close
        End If
    Next
    Application.ScreenUpdating = True
    MsgBox "Proceso terminado", vbInformation, "INSERTAR VARIOS TXT"
End Sub

Gracias. Lo que necesito es insertar los txt desde la columna B en adelante, de modo que en la columna A yo pueda poner el nombre del txt para tener algo así,

"A"                   "B "     "C"      "D"...

lima                  45      20       30...

lima                   30       20     15...

lima                  11      89       50...

arequipa          60        2        33..

arequipa          63      0         5...

trujillo             10         2         3..

Cambia esta línea en la macro

H2. UsedRange. Copy h1. Range("A" & u)

Por esta:

H2. UsedRange. Copy h1.Range("B" & u)

Gracias, pero ¿cómo hago para que en la columna A coloque el nombre del archivo?

(Lima, Trujillo, Arequipa)

Probé la macro y trae todos los datos juntos y no los separa en cada columna. Me imagino que debe ser por que no hemos insertado la opción de separación por comas

H o l a:

Son varios detalles que no mencionaste, valorara esta respuesta y crea una nueva. En la nueva pregunta explica con detalle lo que necesitas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas