Excel - Generar TXT con Excel sin salto de linea al final

 
Vista:
Imágen de perfil de Wilb
Val: 37
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Generar TXT con Excel sin salto de linea al final

Publicado por Wilb (12 intervenciones) el 12/06/2019 21:28:42
Deseo pasar un rango de datos de excel a un archivo TXT pero que no genere un salto de linea al final del archivo.

Estoy usando este código VBA:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sub Consulta01()
Range("c5:c104").Select
Dim NombreArchivo, rutaArchivo As String
 
NombreArchivo = Range("c1")
rutaArchivo = ActiveWorkbook.Path & "\" & NombreArchivo & ".txt"
 
Open (rutaArchivo) For Output As 1
 
captura:
Print #1, ActiveCell
 
ActiveCell.Offset(1, 0).Select
 
If ActiveCell = Empty Then GoTo cerrar
 
GoTo captura:
 
cerrar:
Close #1
 
Range("c1").Select
MsgBox "Archivo >>>" & NombreArchivo & "<<< Generado con Exito"
 
 
End Sub


Adjunto ejemplos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Generar TXT con Excel sin salto de linea al final

Publicado por Antoni Masana (2481 intervenciones) el 13/06/2019 07:34:56
No me gustan los GOTO

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub Consulta01()
    Range("c5:c104").Select
    Dim NombreArchivo, rutaArchivo As String, SW As Boolean
 
    NombreArchivo = Range("c1")
    rutaArchivo = ActiveWorkbook.Path & "\" & NombreArchivo & ".txt"
 
    Open (rutaArchivo) For Output As 1: SW = False
 
    While ActiveCell <> Empty
        If SW Then Print #1, ""  ' <-- El salto de linea lo hacemos de grabar los datos
                                 '  -- y a partir de la segunda línea
        Print #1, ActiveCell ;   ' <-- Aqui ponemos un Punto y Coma para que no añada Salto de Linea
        SW = True
        ActiveCell.Offset(1, 0).Select
    Wend
    Close #1
 
    Range("c1").Select
    MsgBox "Archivo >>>" & NombreArchivo & "<<< Generado con Exito"
End Sub

Marco en negrita los cambios para quitar el Salto de linea al final.

El PUNTO y COMA después del Print #1 hace que no ponga un salto de línea.
Necesitamos un salto de línea antes de cara registro excepto del primero y para eso usamos el SW.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Generar TXT con Excel sin salto de linea al final

Publicado por Andres Leonardo (1583 intervenciones) el 13/06/2019 15:19:42
Excelente no sabia esto!!!!

SAludos Anthony .. aqui aprendo hasta cuando no entro a aprender!!! gracias por el dato
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilb
Val: 37
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Generar TXT con Excel sin salto de linea al final

Publicado por Wilb (12 intervenciones) el 13/06/2019 23:40:45
Estaba seguro de que aquí iba a encontrar la solución a este tema. Muchas gracias estimado Antoni. :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar