Copiar Texto de archivo .txt a celda excel utilizando macros

Tengo el siguiente código para abrir archivos de texto .txt y copiar su contenido en una celda de Excel, pero como hacer cuando el texto en el archivo .txt tiene mas caracteres de los permitidos por una celda, como hacer para hacer que el resto lo copie en la celda de al lado y así sucesivamente.

Muchas Gracias

Sub copia_y_pega()
> Open "C:test.txt" For Input As #1
> contenido = Input(LOF(1), #1)

> linea = Split(contenido)
> For i = 0 To UBound(linea)
> Range("D" & 5 + i).Value = linea(i)
> Next i
> Close #1
> End Sub

1 Respuesta

Respuesta
1

Prueba con la siguiente macro

Sub copia_y_pega()
'Mod.Por.DAM
    Open "C:\trabajo\original2.txt" For Input As #1
    contenido = Input(LOF(1), #1)
    linea = Split(contenido)
    c = 29696
    For i = 0 To UBound(linea)
        cuantos = Application.RoundUp(Len(linea(i)) / c, 0)
        ini = 1
        Range("D" & 5 + i).Value = Mid(linea(i), ini, c)
        If cuantos > 1 Then
            For j = 1 To cuantos
                ini = ini + c
                Cells(5 + i, 4 + j) = Mid(linea(i), ini, c)
            Next
        End If
    Next
    Close #1
End Sub

Cambia c= 29696 por el número de caracteres que quieras por celda.

Saludos. Dante Amor

Recuerda valorar la respuesta.

buenos días,

Esta bueno, pero quisiera uno que me coloque la mayor cantidad de caracteres (texto) en una celda, no que ponga una línea de texto en cada celda.

Muchas Gracias..

La mayor cantidad de caracteres permitidos en una celda es de 32,767, si tu texto tiene una mayor cantidad a 32,767, ¿los caracteres sobrantes dónde quieres que se pongan?

http://office.microsoft.com/es-mx/excel-help/especificaciones-y-limites-de-excel-HP010073849.aspx 

Cambia esto c= 29696 por c = 32767, pero yo hice pruebas y no me acepta la celda más de 29696 caracteres.

Los caracteres que ya no caben en la celda los estoy poniendo en la celda siguiente hacia la derecha.

Eso es lo que tú pediste: "como hacer para hacer que el resto lo copie en la celda de al lado y así sucesivamente".

Entonces ahora explícame qué es lo que necesitas.

No has valorado esta respuesta. Podemos revisar qué falta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas