Cookies de estadística y publicidad
Usamos cookies de estadística y de publicidad, y ambas van a Google. Si rechazas, para ti no cambia nada visible.Ir a la página de privacidad
XLSX
El formato de Excel desde 2007. Varias hojas, fórmulas y formato.
XLSX
XLSX es un contenedor: una envoltura para flujos que ha codificado otra cosa. Se usa para la edición.
La extensión es .xlsx y el nombre completo, Excel Workbook. Ambos importan menos que lo que el archivo puede contener, y de eso trata el resto de esta página.
Microsoft lo publicó en 2007. La especificación es ECMA-376.
La edad interesa por un motivo práctico: cuanto más antiguo es un formato, más programas han tenido tiempo de aprenderlo.
Está publicada entera, así que cualquiera puede implementarla leyendo el documento en vez de a base de inspeccionar archivos. Por eso aparece en tantos programas, y por eso los archivos escritos hace veinte años siguen abriéndose hoy. Publicada no quiere decir libre de regalías: cuando un formato envuelve un códec, la licencia de las patentes es un asunto aparte que la norma no resuelve.
Un archivo XLSX no está limitado a una página, y eso importa al convertirlo a algo que sí lo está: de una conversión sale un único archivo con una sola página dentro — la primera, salvo que el conversor te deje elegir cuál.
XLSX no puede llevar código ejecutable. Por eso los servidores de correo y los portales de documentos lo dejan pasar donde detienen a su gemelo con macros.
XLSX contiene una hoja de cálculo: celdas, fórmulas y las hojas a su alrededor.
Eso decide cómo se convierte: una hoja de cálculo se vuelve un área de impresión, y dónde cortan las columnas es una decisión que alguien tiene que tomar.
XLSX lleva cifrado opcional.
Un archivo cifrado hay que abrirlo antes de que nada pueda convertirlo, aquí y en cualquier otro sitio. Una contraseña no es algo que un conversor pueda esquivar, y a uno que dijera lo contrario tampoco habría que confiarle el archivo.
Microsoft Excel, LibreOffice Calc y Google Sheets lo leen, y también la mayoría de programas del mismo tipo.
Cuando un archivo no se abre, el formato rara vez es el problema: lo más habitual es que el programa sea anterior al formato. Convertir a algo más antiguo es la salida fiable, y para eso está el resto de este sitio.
Ningún navegador lo lee.
Ese es el motivo más frecuente para convertirlo: no que el formato sea malo, sino que el sitio donde quieres mostrar el archivo no sabe leerlo.
XLSX está pensado para abrirse y cambiarse. Guarda el archivo en este formato mientras el trabajo siga en marcha y exporta desde él cada vez que haga falta una copia terminada.
Renombra un .xlsx a .zip y ábrelo. Dentro hay un pequeño árbol de carpetas: un XML por hoja, una tabla compartida con todas las cadenas de texto distintas del libro, un archivo de estilos y una carpeta de propiedades del documento. Cualquier imagen u objeto incrustado está ahí como un archivo aparte.
No es una curiosidad. Es la razón de que un libro dañado se pueda rescatar a veces abriendo el paquete y sacando el XML de la hoja, de que los tamaños se comporten como se comportan, y de que un libro pueda arrastrar cosas que nadie recuerda haber metido. El formato se inspecciona con herramientas que ya tiene todo el mundo.
XLSX sustituyó al binario XLS con Office 2007. El formato antiguo era un documento compuesto que solo Microsoft entendía del todo; el nuevo está documentado, y esa es la razón de que LibreOffice, Google Sheets, Numbers y decenas de bibliotecas lo lean con fiabilidad cuando el soporte de XLS fue siempre conjetura parcial.
Los límites se movieron a la vez y conviene conocerlos porque la gente sigue chocando con ellos: una hoja admite 1.048.576 filas y 16.384 columnas, frente a 65.536 y 256 antes. Una exportación cortada exactamente en 65.536 filas no es una casualidad: es una herramienta escribiendo el formato viejo.
Cada celda con fórmula guarda dos cosas: la fórmula como texto y el último resultado calculado. Por eso un libro se abre mostrando valores en vez de recalcular cien mil celdas primero, y por eso una herramienta que lee XLSX sin motor de cálculo puede aun así dar los números correctos.
También significa que el valor guardado puede estar caducado. Un archivo escrito por un programa que no calcula — muchas bibliotecas de exportación no lo hacen — contiene fórmulas sin resultado, y cada celda se lee como cero o como vacía hasta que Excel lo abre. Si un libro generado aparece vacío justo donde deberían estar los totales, la causa habitual es esa.
Los números se guardan en coma flotante de doble precisión, que sostiene unos quince dígitos significativos. Un número de tarjeta de dieciséis cifras, una referencia larga de pedido, un IBAN o un identificador nacional pierden las últimas posiciones — de forma permanente, dentro del archivo, no solo en pantalla.
La defensa es declarar la columna como texto antes de que lleguen los datos, para que los dígitos se guarden como caracteres y no como una cantidad. Es el mismo problema de fondo que el cero inicial que desaparece de un código postal de Álava o de una provincia argentina, y vale la misma regla: un identificador no es un número por estar hecho de cifras.
Las propiedades del documento llevan el autor, la última persona que guardó, el nombre de empresa que hubiera en la instalación de Office y las fechas de creación y modificación. Las filas, columnas y hojas ocultas están ocultas, no ausentes: los datos están en el XML y los lee cualquiera.
Los vínculos externos son el filo más afilado. Una fórmula que apunta a otro libro guarda la ruta completa desde la que se enlazó, y esa ruta nombra con frecuencia una unidad de red, un cliente o una estructura de carpetas que describe el negocio. Limpiar las propiedades del documento no los quita: viven en la hoja, no en los metadatos.
XLSX es uno de los formatos de Office que admite la herramienta de metadatos de este sitio, junto a XLSM, DOCX, DOCM, DOTX y PPTX. No recodifica nada: cambia las tres partes de propiedades del paquete por partes vacías con la forma correcta, en vez de borrarlas, para que el índice de tipos de contenido y el archivo de relaciones no queden apuntando a piezas que ya no están. La miniatura incrustada se elimina junto con su relación.
Ahí se va el autor, quién guardó por última vez, la empresa, las fechas y el tiempo total de edición, un contador de los minutos que el libro ha estado abierto a lo largo de su vida entera. Lo que no toca son los vínculos externos del párrafo anterior, que están en la hoja. La herramienta inspecciona el archivo antes y después y enseña las dos listas, así que lo que afirma se comprueba en lugar de creerse.
Es deliberado y es de las mejores decisiones del formato. Un archivo terminado en .xlsx no puede llevar código; un libro con macros tiene que guardarse como .xlsm, que lo anuncia en la extensión. Renombrar un XLSM a XLSX no cuela el código: el libro simplemente lo pierde.
De ahí sale una regla útil para lo que llega por correo: un .xlsx a secas no puede ejecutar nada al abrirse. El riesgo vive en el .xlsm y en el antiguo .xls, que sí pueden y que no lo dicen con la misma claridad.
Conviene ser muy explícito, porque es la limitación que más sorprende. Al convertir un XLSX a CSV, TSV, JSON, NDJSON, SQL o Parquet, se abre el libro, se toma la primera hoja de la lista y se leen sus valores. Eso es toda la lectura. No se leen las hojas segunda en adelante, ni las fórmulas — solo vuelve el resultado guardado —, ni los formatos de número, ni las celdas combinadas, ni los gráficos, ni las imágenes, ni los anchos de columna, ni las alturas de fila, ni los estilos, ni la validación de datos, ni los comentarios, ni los nombres definidos, ni las tablas dinámicas.
En el sentido contrario, el XLSX que escribimos tiene una sola hoja, nombrada a partir del nombre del archivo de origen y recortada a 31 caracteres, sin estilos, sin fórmulas y sin anchos. Y si los datos de partida vienen anidados, se aplanan: cada hoja del árbol se convierte en una columna cuyo nombre es la ruta con puntos, con los índices de los arrays como tramos de esa ruta.
Las conversiones a CSV, TSV, JSON, NDJSON, SQL y Parquet ocurren enteras dentro del navegador: el libro no se sube a ninguna parte y el tope es de 100 MB por archivo. Las conversiones a ODS y a PDF las hace LibreOffice en un contenedor nuestro, así que ahí el archivo sí viaja, el tope baja a 25 MB y cuentan para el cupo de cien conversiones de servidor por visitante y día.
Es la misma extensión y son dos historias distintas, y esta página prefiere decirlo con los números delante a resolverlo con un «casi todo se queda en tu equipo». En el sitio entero son 439 combinaciones que no salen del navegador frente a 89 que sí, y la ficha de cada conversión dice cuál de las dos es.
Para una persona, XLSX es excelente: los tipos están declarados, las fechas siguen siendo fechas, los números largos conservan su formato y el archivo lleva su propia estructura, así que no hay que adivinar nada al abrirlo. Para mandarle una hoja a un compañero es mejor que CSV siempre.
Para un programa pesa más de lo que el trabajo suele pedir. Leerlo significa descomprimir un paquete y analizar varios documentos XML con una biblioteca, mientras que CSV no necesita biblioteca ninguna y se procesa en flujo desde un archivo mayor que la memoria disponible. Ese es el reparto honesto: XLSX cuando lo abre una persona, CSV cuando lo lee una máquina.
| Extensión | .xlsx |
|---|---|
| Tipo de medio | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| Publicado por | Microsoft |
| Primera publicación | 2007 |
| Especificación | ECMA-376 |