¿Cómo mostrar correctamente los archivos .csv en Excel 2013?

189

Parece que Excel 2013 no lee los archivos CSV correctamente (Excel 2010 sí). Cada vez que abro archivos .csv, todos mis datos se muestran en la primera columna.

Sé que puedo ir a DATA, Converty elijacommas , pero esta configuración no se guarda, y estoy harto de hacerlo cada vez que abro este tipo de archivo.

¿Cómo puedo configurar Excel 2013, de una vez por todas, para que muestre los archivos CSV (separados por comas)?

David
fuente
1
Cuando abre el archivo, ¿aparece algún mensaje?
Andre Silva
No. No aparece ningún mensaje
David
Mi experiencia es que si el archivo tiene una fila de encabezado, Excel 2013 pasará automáticamente por el asistente de importación. Sin esa fila de encabezado, lo muestra todo como una sola columna por fila.
StarPilot

Respuestas:

400

Abra el archivo CSV con un editor de texto decente como Notepad ++ y agregue el siguiente texto en la primera línea:

sep=,

Ahora ábralo con Excel nuevamente.

Esto establecerá el separador como una coma, o puede cambiarlo a lo que necesite.

Guilherme Viebig
fuente
3
La mejor solución, pero no la que esperaba. Esa configuración no es de Excel en sí, eso significa que tengo que escribir esta línea anterior en todo mi archivo CSV.
David
31
El hecho de que esto no sea estándar, ninguna aplicación que escriba CSV agrega esta línea, y solo Excel (hasta donde yo sé) lo acepta. Hace de esto una mala solución en el mejor de los casos. Sin mencionar que esto no funciona para Excel 2007 (lo mejor que tenemos aquí en el trabajo)
jmarkmurphy
21
No estamos hablando de estándares. Estamos hablando de Microsoft Excel. Excel se envía con diferentes configuraciones y teclas de acceso rápido según el idioma. Esto hace que importar un archivo CSV sea un rompecabezas. Esto es simplemente una solución alternativa, y creo que ayuda a mucha gente, en su mayoría usuarios avanzados, aunque no es la mejor respuesta.
Guilherme Viebig
10
Necesita una solución que no implique agregar líneas al archivo, ya que esto rompe otras cosas que necesitan usar el archivo. Además, ya probé la solución de configuración regional, pero la configuración ya era la indicada y Excel sigue poniendo todo en la primera columna.
Elliot
2
Esto muestra la línea si abre el csv en Libreoffice Calc. Sin embargo, funciona bien en MS Excel.
Arda
93

Para Excel 2013:

  1. Abra el libro en blanco.
  2. Vaya a la pestaña DATOS .
  3. Haga clic en el botón Desde texto en la sección Datos externos generales .
  4. Seleccione su archivo CSV.
  5. Siga el Asistente de importación de texto . (en el paso 2, seleccione el delimitador de su texto)

http://blogmines.com/blog/how-to-import-text-file-in-excel-2013/

marcosbernal
fuente
38

El problema es de las opciones regionales. El separador decimal en win 7 para los países europeos es el coma. Debe abrir el Panel de control -> Opciones regionales y de idioma -> Configuración adicional -> Separador decimal: haga clic para ingresar un punto (.) Y para separar el separador ingrese un coma (,). Esto es !

skander
fuente
55
Esto no funciona. Tengo este conjunto como se indica y se ignora. Todo es hasta en la primera columna.
Elliot
1
Asombroso: esto ayudó a un colega que usaba Office 2011. Establecimos su región desde Polonia (que usa "," como separador decimal) al Reino Unido y esto lo solucionó. Por qué esto debería hacer la diferencia, no tengo idea ...
John
3
Esta solución me funciona (Excel 2013). Ajuste mi formato regional: establezco un punto (.) Como "separador decimal", una coma (,) como "separador de miles" y una coma (,) como "separador de lista"
cesargastonec
1
Estoy usando el formato predeterminado de Windows 10 "Inglés (Canadá)" que normalmente muestra el archivo CSV correctamente (separado por columnas) al abrir el archivo con Excel 2013-2016. Recientemente noté, después de volver a abrir un archivo CSV, que una de mis aplicaciones estaba cambiando el formato de numeración predeterminado. Como se especifica aquí, después de volver al punto (.) Como "separador decimal" y coma (,) como formato de numeración "separador de lista", el archivo CSV se mostró bien. No hay necesidad de una solución alternativa que implique piratear la primera fila del archivo CSV con el bloc de notas para agregar "sep =,"
JP slash otterlover
1
¡Finalmente! Después de intentar durante muchos minutos más de lo que debería reemplazar con regex en Notepad ++ el separador, el punto decimal / coma y no los caracteres entre comillas, etc., me recordaron esta respuesta y simplemente establecí la configuración de mi idioma de manera diferente, como se indica aquí. Ahora separa correctamente las columnas y los números también aparecen correctamente, sin estropear ningún texto.
Fabian Röling
25

Sé que ya se ha aceptado una respuesta, pero un elemento para verificar es la codificación del archivo CSV. Tengo un script Powershell que genera archivos CSV. Por defecto, los codificaba como UCS-2 Little Endian (por Notepad ++). Abriría el archivo en una sola columna en Excel y tendría que hacer la conversión de Texto a Columnas para dividir las columnas. Cambiar el script para codificar la misma salida que "ASCII" ( UTF-8 sin BOM por Notepad ++) me permitió abrir el CSV directamente con las columnas divididas. También puede cambiar la codificación del CSV en Notepad ++ .

  • Codificación de menú > Convertir a UTF-8 sin BOM
  • Guarde el archivo CSV
  • Abrir en Excel, las columnas deben dividirse
Shayne Ephraim
fuente
3
Agradezco esta respuesta. Me gusta usar, Some-Command | Out-File -Encoding Defaultque generalmente proporciona la codificación ANSI correcta (por defecto de fábrica en EE. UU. Al menos).
Mister_Tom
Entonces, si no especifica la codificación, ¿ Out-Filecodifica el archivo como algo diferente de Defaultforma predeterminada? Estoy tratando de entender que ... es predeterminado ... pero no se usa por defecto ... y, por lo tanto, ¿no es el predeterminado?
jdgregson
El uso de "-Encoding Default" me lo arregló. ¡Gracias!
Kirk Liemohn
21

Puede elegir qué separador desea en Excel 2013 Vaya a DATOS -> Texto a columnas -> Elija delimitado -> luego elija su separador "Tab, Semicolon, Coma, Space u otro" y verá cambios inmediatamente en la "vista previa de datos "luego haga clic en FInish

Una vez que tenga el formato que desea, simplemente guarde el documento y será permanente.

usuario3241007
fuente
2
Esto no aborda la pregunta principal. Necesitamos que este sea el comportamiento predeterminado para cualquier archivo, no para arreglarlo en un archivo específico.
Elliot
17

Tomado de /superuser/238944/how-to-force-excel-to-open-csv-files-with-data-arranged-in-columns

El comportamiento de Excel al abrir archivos CSV depende en gran medida de su configuración local y del separador de lista seleccionado en Región e idioma » Formatos » Avanzado . Por defecto, Excel asumirá que cada CSV se guardó con ese separador. ¡Lo cual es cierto siempre que el CSV no provenga de otro país!

Si sus clientes están en otros países, pueden ver otros resultados, entonces usted piensa.

Por ejemplo, aquí puede ver que un Excel alemán usará punto y coma en lugar de coma como en los EE. UU.

Configuracion regional

cdmdotnet
fuente
> Esta solución me funciona (Excel 2013). Ajuste mi formato regional: establezco un punto (.) Como "separador decimal", una coma (,) como "separador de miles" y una coma (,) como "separador de lista" - cesargastonec 13 de julio de 15 a las 16: 05
Alex78191
1
O puede cambiar el separador decimal en Opciones de Excel superuser.com/a/1470373
Alex78191
3

Otro posible problema es que el archivo csv contiene una marca de orden de bytes "FEFF". La marca de orden de bytes está destinada a detectar si el archivo se ha movido de un sistema que utiliza la orden de bytes big endian o little endian a un sistema de endian opuesto. https://en.wikipedia.org/wiki/Byte_order_mark

Eliminar la marca de orden de bytes "FEFF" utilizando un editor hexadecimal debería permitir que Excel lea el archivo.

Devon Holcombe
fuente