Ayuda con Macro de XLS a TXT

Encontré en esta misma página una macro para exportar de excel a txt, esta muy buena pero a mi me sale un error.
Al exportar 3 columnas me sale toda la primera columna sola y luego debajo de ella las dos columnas de al lado. La macro es esta:
Sub exportar()
Dim FileSysObj As Object
Dim ArchivoTxt As Object
Dim AreaTexto As String
Sheets("Resultado").Select
AreaTexto = ActiveSheet.Range("A1:C1130").Value
Set FileSysObj = CreateObject("Scripting.FileSystemobject")
Set ArchivoTxt = FileSysObj.CreateTextFile("D:\Resultado.txt", True)
'recorre el rango a copiar
Dim celda
For Each celda In AreaTexto
ArchivoTxt.WriteLine celda
Next
ArchivoTxt.Close
End Sub
Me podrías ayudar para que exporte las 3 columnas al mismo nivel. Muchas Gracias

1 Respuesta

Respuesta
1
Pues no es que esa macro tenga un erro, o arroje un error, sino que simplemente hace lo que le esta indicando esa macro. PAra llenar un txt con varias columnas, hay que usar un Array:
Sub tabulandotxt()
Dim valor() As Variant
[a1].Select
If ActiveCell = Empty Then GoTo saltar
Open "C:\Datos.txt" For Output As 1
regresar:
valor = Array(ActiveCell, ActiveCell.Offset(0, 1), ActiveCell.Offset(0, 2), ActiveCell.Offset(0, 3), _
ActiveCell.Offset(0, 4), ActiveCell.Offset(0, 5), ActiveCell.Offset(0, 6))
Print #1, valor(0); Tab(13); valor(1); Tab(24); valor(2); Tab(30); valor(3); _
Tab(36); valor(4); Tab(44); valor(5); Tab(51); valor(6)
ActiveCell.Offset(1, 0).Select
If ActiveCell = Empty Then GoTo saltar
GoTo regresar:
saltar:
Close #1
End Sub
OJO, lo de TAB lo puedes obviar si deseas
Abraham

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas