Tengo en un excel varias filas y necesito hacer un txt por fila en forma simultanea.

Tengo en un excel con varias filas y necesito hacer un txt por fila en forma simultanea. Para lo cual en la columna A esta la información que necesito guardar bajo el nombre que esta en la columna B.

1 txt por fila sin importar el largo de filas pero para mi caso no son mas de 50 filas.

Es decir:

Celda A1 = B1.txt (se guarda un txt con lo que esté en la celda A1 con el nombre que está en la celda B1)

Celda A2 = B2.txt

Celda A3 = B3.txt

Celda A4 = B4.txt

Así sucesivamente.

¿Quién me puede ayudar con una macro ojala simple?

Lo mismo que dijo Luis Mondelo aquí Importar el texto de varios archivos.txt a una hoja de excel, el texto de cada archivo en una celda pero al revés

Soy nivel usuario con intención de hacerme cada día más experto.

1 respuesta

Respuesta
1

Este código te servirá:

Sub totxt()
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Dim Fileout As Object
    Dim nombre As String, texto As String
    i = 1
    j = 1
    Do
    texto = Cells(j, 1).Value
    nombre = Cells(i, 2).Value
    If nombre = "" Then Exit Sub
    Set Fileout = fso.CreateTextFile("C:\Users\usuario\Desktop\" & nombre & ".txt", True, True)
    Fileout.Write texto
    Fileout.Close
    i = i + 1
    j = j + 1
    Loop
End Sub

Deberás modificar la ruta donde quieras guardar los txt  "C:\Users\usuario\Desktop\" por el que te interese

Pon un botón en la hoja en la cual están los datos, ya que deberás ejecutarla desde esa hoja

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas