Macro para generar txt separada por comas

Para dante amor, buenos días tengo una macro que me genera un txt separado por comas pero adicional me estsa llenando el archivo txt de

;;;;;;;;;;;
;;;;;;;;;;;
;;;;;;;;;;;
;;;;;;;;;;;

y no me esta sacando las comas, adjunto la macro que estoy usando

Private Sub GenerarTXTOperacion_Click()

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Set h = Sheets("Tiempos Operacionales")
    ruta = ThisWorkbook.Path & "\"
    arch = Format(h.Range("B1"), "dd-mm-yyyy")
    h.Copy
    ActiveSheet.Rows("1:2").Delete
    ActiveWorkbook.SaveAs _
        Filename:=ruta & arch & ".txt", _
        FileFormat:=xlCSV, CreateBackup:=False, _
        Local:=True
    ActiveWorkbook.Close
    Application.EnableEvents = True
    MsgBox "Archivo creado"
End Sub

Respuesta
1

Prueba con la siguiente macro

Sub Generar_Archivo()
'Por.Dante Amor
    Const separador As String = ","
    '
    Set h1 = Sheets("Hoja1")
    ruta = ThisWorkbook.Path & "\"
    If Left(ruta, 1) <> "\" Then ruta = ruta & "\"
    nombre = Format(h.Range("B1"), "dd-mm-yyyy")
    '
    fc = h1.UsedRange.SpecialCells(11).Address
    f = h1.UsedRange.SpecialCells(11).Row
    col = h1.UsedRange.SpecialCells(11).Column
    nFileNum = FreeFile
    Open ruta & nombre & ".txt" For Output As #nFileNum
    For Each r In h1.Range("A1:A" & f).Rows
        For Each c In h1.Range(h1.Cells(r.Row, "A"), h1.Cells(r.Row, col))
            cadena = cadena & c.Value & separador
        Next
        If cadena <> "" Then
            cadena = Left(cadena, Len(cadena) - 1)
        End If
        Print #nFileNum, cadena
        cadena = Empty
    Next
    Close #nFileNum
    MsgBox "Fin"
End Sub

Prueba y me comentas

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

me sale error en esta línea

   nombre = Format(h.Range("B1"), "dd-mm-yyyy")

Cambia por esto:

nombre = Format(h1. Range("B1"), "dd-mm-yyyy")

también cambia "Hoja1" por el nombre de tu hoja

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Buenos días Dante, aun sigue saliendo todo hacia abajo adicional me salio un encabezado

Con todos los títulos y se quedo el archivo de Excel pensando más de 5 minutos :(

Revisa que no haya espacios en blanco en las celdas de abajo. De la última celda con información elimina todas las filas de abajo, o mejor aún, selecciona desde la celda A1 y hasta la última celda con datos, copia esa información a un archivo nuevo, ejecuta la macro nuevamente.

Si tienes problemas, envíame tu archivo para revisarlo

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Diana Carolina Marin Gomez

1 respuesta más de otro experto

Respuesta
1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas