Excel (XLSX) a CSV

Abre un archivo .xlsx sin Office: elige la hoja, comprueba la vista previa y descarga un CSV con el separador y el formato de fecha que necesitas. El archivo nunca sale de tu dispositivo.

Suelta aquí tu archivo .xlsx

o haz clic para elegirlo: se queda en tu dispositivo, no se sube nada a ningún sitio

🔒 El archivo se abre dentro de tu navegador: nunca se sube a ningún servidor.

Cómo se usa

Suelta tu archivo .xlsx en el recuadro (o haz clic para elegirlo): la herramienta lo abre, enumera las hojas y muestra una vista previa de las primeras 50 filas. Elige la hoja, el separador y el formato de fecha, y luego descarga el CSV o cópialo al portapapeles. Al cambiar una opción la vista previa se actualiza al momento, así que lo que ves en la tabla es literalmente lo que va a parar al archivo.

Por qué un .xlsx se puede abrir sin Excel

Desde 2007 un libro de Excel ya no es un binario secreto, sino un paquete OOXML (el estándar público ECMA-376): por dentro es un archivo ZIP lleno de archivos XML. Dentro encuentras la lista de hojas (xl/workbook.xml), todo el texto de las celdas reunido en un único diccionario (xl/sharedStrings.xml), los formatos numéricos (xl/styles.xml) y un archivo por cada hoja. Esta página descomprime el archivo con la descompresión propia del navegador y lee ese XML: sin librerías y sin servidor.

Fechas: el número 45000 y el 29 de febrero de 1900 que nunca existió

En Excel una fecha no es una fecha, sino un número: el 1 es el 1 de enero de 1900 y el 45000 es el 15 de marzo de 2023. Lo único que la convierte en fecha es el formato aplicado a la celda, así que la herramienta lee styles.xml y trata como fecha u hora los formatos integrados 14-22, 27-36, 45-47 y 50-58, además de cualquier formato personalizado que contenga y, m, d, h o s fuera de las comillas (y el formato que una celda hereda de su estilo de celda). Y luego está la trampa histórica: Excel cree que 1900 fue bisiesto y que el 29 de febrero de 1900 (serie 60) existe, por compatibilidad con Lotus 1-2-3 allá por 1983. Por eso hay que restar un día a partir de la serie 61, porque si no todas las fechas salen desplazadas 24 horas. Los archivos guardados con el Excel antiguo para Mac usan en cambio la época de 1904: la herramienta lo detecta y te avisa.

Separador, separador decimal y BOM: por qué un CSV se abre mal

El CSV no tiene un estándar único. Excel, en la mayoría de los idiomas europeos, espera un punto y coma como separador y una coma como separador decimal; el software en inglés y la mayoría de los sistemas empresariales quieren una coma como separador y un punto en los decimales. Aquí eliges la combinación que quieras, y cualquier valor que contenga el separador, unas comillas o un salto de línea se envuelve entre comillas dobles siguiendo la RFC 4180. La marca UTF-8 del principio (el BOM) es lo que le dice a Excel «este archivo es UTF-8»: es justo cuando FALTA el BOM cuando las tildes se convierten en garabatos al abrir el archivo con doble clic (é se convierte en é). Déjala activada si el archivo va destinado a Excel; desactívala si el programa que lo va a leer espera texto plano.

Lo que no hace, dicho desde el principio

Solo lee archivos .xlsx: el antiguo .xls binario y los archivos protegidos con contraseña no se abren (y te lo dice con un mensaje claro, no en silencio). Las fórmulas no se recalculan: obtienes el valor que Excel guardó la última vez. Los números salen exactamente como están guardados, sin el formato de la celda: una celda que se muestra como 15% sale como 0,15, y una que se muestra como 1.234,50 € sale como 1234,5. Las horas salen siempre en formato de 24 horas con segundos (una celda que muestra 18:00 sale como 18:00:00) y, cuando un formato de solo fecha esconde también una hora, la hora se añade en vez de tirarse a la basura. No se exportan gráficos, imágenes, comentarios, colores ni celdas combinadas (de una celda combinada se conserva el valor en la primera casilla, igual que hace Excel). Las filas y las columnas ocultas sí acaban en el CSV. A partir de 200.000 filas la herramienta se para y te lo dice.