txt tener separado punto puede por para online guardar delimitado convertir configurar con compatibles como comas coma caracteristicas archivos archivo abrir excel vba excel-vba

tener - guardar excel como csv delimitado por comas



¿Cómo guardar un archivo csv delimitado por puntos y comas usando vba? (4)

Acabo de comprobar esto porque tenía el mismo problema. El nombre de archivo no tiene funcionalidad en este caso.

Esto es lo que funcionó para mí:

With ActiveWorkbook .SaveAs Filename:="My File.csv", FileFormat:=xlCSV, Local:=True .Close False End With

En configuraciones regionales ->; <- como separador de lista. También es importante no guardar cambios al cerrar -> con Cerrar tiene que usar False .

Recientemente necesité copiar algunos datos en una hoja de cálculo, usar VBA para formatearlo, y luego guardar esa hoja en un archivo CSV. Yo uso el siguiente código:

ws.SaveAs Filename:=filestr, Fileformat:=xlCSV

ws es la hoja de trabajo que guardé.

Esto me dará un archivo CSV delimitado por comas.

Sin embargo, me gustaría guardar esa hoja en un archivo delimitado por punto y coma. He hecho algo de Google y encontré la siguiente solución:

  1. Vaya a Inicio> Configuración> Opciones regionales y de idioma
  2. Haga clic en el botón Personalizar
  3. Junto al Separador de listas, escriba un punto y coma (;)

He seguido los procedimientos anteriores y he cambiado mi código a:

ws.SaveAs Filename:=filestr, Fileformat:=xlCSV, Local:=True

Pero todavía obtuve un archivo CSV delimitado por comas como salida.

La versión de Excel que estoy usando es Excel 2003 y mi sistema operativo es Windows XP

¿Alguien podría sugerir cómo guardar un archivo delimitado por punto y coma usando VBA?


No es necesario declarar todas estas variables, simplemente agregue local: = true al final de su método SaveAs, de esta manera:

ActiveWorkbook.SaveAs Filename:="C:/Path/TryMe.csv", FileFormat:=xlCSV, Local:=True


Para usar la secuencia de comandos vbs después de la construcción tuvo éxito:

.SaveAs Filename, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1

donde los argumentos son:

Object Filename, Object FileFormat, Object Password, Object WriteResPassword, Object ReadOnlyRecommended, Object CreateBackup, XlSaveAsAccessMode AccessMode, Object ConflictResolution, Object AddToMru, Object TextCodepage, Object TextVisualLayout, Object Local

SourceLink: https://msdn.microsoft.com/ru-ru/library/microsoft.office.tools.excel.workbook.saveas.aspx

El último "1" en la función "Guardar como" es igual a Local = Verdadero

Además, el punto y coma debe definirse como el separador de lista en la configuración regional del sistema operativo (ver respuestas arriba)


Simplemente use este código: ActiveWorkbook.SaveAs "My File.csv", xlCSV, Local: = True

(no use: Nombre de archivo: =)