Al guardar/abrir archivos CSV en Excel, el separador predeterminado es un punto y coma ;
, como necesito que sea una coma, ,
intenté cambiarlo cambiando la configuración de idioma y regional después de varias otras publicaciones sobre este problema (es decir,¿Cómo hacer que Excel interprete la coma como delimitador predeterminado en archivos CSV?).
Sin embargo, después de cambiar el separador de lista en esa configuración, mi Excel sigue guardando archivos CSV con punto y coma. ¿Es porque se instaló Excel mientras mi separador de lista estaba configurado como punto y coma? ¿O hay otra configuración que me falta aquí?
Respuesta1
Encontré el problema. Mi símbolo decimal en la configuración regional también era una coma (europeo), por lo que, incluso cuando mi separador de lista era una coma, el CSV se guardaba con punto y coma. Ahora cambié mi símbolo decimal a un punto y ahora el archivo CSV se crea correctamente con comas como separadores. Probé esto dos veces y ahora sé que debe haber una excepción: si el símbolo decimal es una coma, entonces el separador de lista será un punto y coma, incluso si se establece lo contrario.
Respuesta2
Para ahorrar
Debes ajustar el separador de listas en la configuración regional y de idioma.previopara guardar el archivo -
Para abrir
Ir aDatos - Obtener datos externos - Desde texto
seleccione el archivo
Seleccionardelimitado, presione siguiente
y seleccione eldelimitador coma
Haga clic en finalizar
O introdúzcalo y luego use texto en columnas.mira aquí
Respuesta3
Aquí hay una macro muy bonita que funciona bastante bien:
Sub saveCSV()
File = Application.GetSaveAsFilename(InitialFileName:="file.csv", FileFilter:="CSV (*.csv), *.csv")
ActiveWorkbook.SaveAs Filename:=File, FileFormat:=xlCSV, CreateBackup:=False, local:=False
End Sub
Respuesta4
Esto es un poco antiguo, pero me encontré con el mismo problema:
tenía un CSV delimitado con punto y coma ( ;
). La configuración del separador del sistema (Windows) también está configurada en punto y coma.
- Si abrí el CSV manualmente, el archivo se separó correctamente.
- Si dejo que VBA lo abra, lo separa incorrectamente con una coma.
El uso Delimiter:=";"
aparentemente solo funciona con .txt
.
SIN EMBARGO, usar Local :=True
resolvió el problema para mí:
Workbooks.Open(Filename:=fullpath, Local:=True)