Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
A better way to browse. Learn more.
A full-screen app on your home screen with push notifications, badges and more.
Este tema está ahora archivado y está cerrado a más respuestas.
Buenos días,
actualmente uso una macro a diario que me genera un archivo CSV de varias hojas de un mismo libro. Como bien indica el tipo de archivo que se genera, los campos resultantes, lo hacen separado por comas, pero para la aplicación final en la que doy uso al archivo CSV generado, necesito de "|" (pipeline) para funcionar correctamente.
Copio la macro en cuestión por si es posible modificar o añadir algo que permita que el separador sea Pipeline:
Sub Crear_CSV()
Dim csvName$, mySh As Worksheet
Dim i&
Application.ScreenUpdating = False
Do
i = 1 + i
csvName$ = ThisWorkbook.Path & "\ARCHIVOCSV_" & Format(i, "0000") & ".csv"
Loop Until Dir(csvName$) = ""
Workbooks.Add xlWBATWorksheet
For Each mySh In ThisWorkbook.Sheets
mySh.[a1].CurrentRegion.Offset(1).Copy
Cells(Rows.Count, "a").End(xlUp).Offset(1).PasteSpecial xlPasteValuesAndNumberFormats
Next mySh
Rows(1).Delete
With Application
.UseSystemSeparators = False
.DecimalSeparator = "."
.ThousandsSeparator = ","
End With
ActiveWorkbook.SaveAs Filename:=csvName$, FileFormat:=xlCSVMSDOS
ActiveWorkbook.Close False
Application.UseSystemSeparators = True
Application.ScreenUpdating = True
MsgBox "Se ha creado el archivo:" & vbLf & csvName$, vbInformation, "Crear CSV"
Shell "explorer.exe /select," & csvName, vbMaximizedFocus
End Sub
Gracias por adelantado por vuestra ayuda.
Marcos.