Importar datos de un txt con más de 65536 filas

Buenos días amigos. Hace tiempo leo vuestras preguntas y respuestas que me suelen ser de mucha utilidad, pero esta es la primera vez que formulo una.
Frecuentemente tengo que importar a Excel info de archivos TXT que tienen más de 65536 filas ( no tengo Excel 2007 aún), por lo que actualmente primero "divido" manualmente el txt en varios archivos y luego importo mediante una macro cada uno de ellos a distintas hojas de un mismo libro.
La pregunta es: cómo puedo importar un rango de filas específico desde el txt o bien que me divida los datos importados del txt en tantas hojas como sea necesario en un libro.
Mil gracias desde ya.
Pablo

1 Respuesta

Respuesta
1
El ejemplo que te doy aquí lo probé con un archivo de texto qir tiene 2 columnas, la primera es numérica y la segunda es de texto.
Sub test()
Dim maxRows As Long
Dim id As Long
Dim mChar As String
Dim fileName As String
Dim i As Long
    fileName = "C:\Temp\Copia.txt"
    Open fileName For Input As #1
    i = 1
    Do
       Input #1, id, mChar
       Cells(i, 1) = id
       Cells(i, 2) = mChar
       i = i + 1
       If i = 65537 Then
          ActiveWorkbook.Sheets.Add
          i = 1
       End If
    Loop While Not EOF(1)
    Close #1
End Sub
Suerte.
Muchas gracias por tu respuesta.
Estoy tratando de adaptarlo a mi caso, pero tengo algunos inconvenientes ya que el txt tiene 85 columnas separadas por punto y coma. En realidad estoy probando tanto importar toda la fila en una columna para después utilizar el comando "texto en columnas" pero tengo el problema de que corta algunas filas, estimo que debido a que encuentra algún otro separador o también he probado agregar 85 variables pero no le estoy dando en el clavo para leer correctamente los separadores (;) del txt.
¿Se te ocurre algo?
Sino igualmente muchas gracias, me has dado un buen puntapié inicial. Seguiré probando
Saludos
Eso se debe al separador ;. Una forma de resolverlo sería sustituir los ; por, en caso de ser posible.
Revísalo y me cuentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas