martes, 17 de junio de 2014

Formatos de ficheros Excel (extensiones) más habituales.

Hablaré hoy de un tema, creo, interesante: Los formatos o extensiones de los ficheros Excel.
Sin duda todos conocemos la extensión .xlsx o la vieja .xls ... pero hay muchas más.

Hoy me centraré en las extensiones más importantes de las versiones de Excel 2007 y superiores.
  • .xlsx (Libro de Excel): Formato de archivo basado en XML predeterminado de Excel 2007 y superior.
    No se pueden almacenar códigos de macros de Microsoft Visual Basic para Aplicaciones (VBA) ni hojas de macro de Office Excel 4.0 (.xlm).
  • .xlsm (Libro de Excel con código VB): Formato de archivo basado en XML y habilitado para macros de Excel Excel 2007 y superior.
    Almacena código de macros de VBA y hojas de macros de Excel 4.0 (.xlm).
  • .xltx (Plantilla): Formato de archivo predeterminado de una plantilla de Excel 2007 y superior.
    No puede almacenar código de macros de VBA ni hojas de macros de Excel 4.0 (.XML).
  • .xltm (Plantilla con código VB): Formato de archivo predeterminado de una plantilla de Excel 2007 y superior.
    Almacena código de macros de VBA u hojas de macros de Excel 4.0 (.XML).
  • .xlam (Complemento de Excel): Complemento basado en XML y habilitado para macros de Excel 2007 y superior. Se trata de un programa complementario que está diseñado para ejecutar un código adicional.
    Admite el uso de proyectos de VBA y hojas de macros de Excel 4.0 (.xlm).
  • .xlw (Libro de Excel 4.0): Formato de archivo de Excel 4.0 que guarda solo hojas de cálculo, hojas de gráfico y hojas de macro.
    Puede abrir un libro en este formato de archivo en Excel, pero no puede guardar un archivo de Excel en este formato.
  • .xlsb (Libro binario de Excel): Formato de archivo binario (BIFF12) de Excel 2007 y superior.
    Se trata de un formato de archivo que se carga y guarda rápidamente para usuarios que buscan la manera más rápida de cargar un archivo de datos.
    Es compatible con proyectos de VBA, hojas de macros de Excel y todas las características nuevas que se usan en Excel 2007, Excel 2010 y Excel 2013. Sin embargo, no se trata de un formato de archivo XML y, por tanto, no es óptimo para obtener acceso a contenido ni manipularlo sin usar Excel 2013, Excel 2010 o Excel 2007, y el modelo de objetos.


Me detendré y comentaré la última de las extensiones listadas, y es que el Libro binario de Excel (.xlsb) fue creado con el objetivo de facilitar el proceso de compresión, guardado, apertura y funcionamiento de ficheros que contiene una gran cantidad de información.

La extensión .xlsb (libro binario) fue implementada a partir de la versión Excel 2007, solucionando el problema de manejo de hojas de cálculo que contenían mucha información, las cuales necesitaban mucho tiempo para abrirse, así como la dificultad que representaba manejar este tipo de ficheros por los frecuentes bloqueos que se producían al utilizarlos.

No todo son beneficios al usar esta extensión, la desventaja de utilizar este tipo de ficheros reside en que a diferencia de los ficheros con extensión .xlsx, estos ficheros no se pueden recuperar parcialmente !!, es decir en el caso de disponer algún documento defectuoso o corrupto no es viable recuperar parte de la información de una manera rápida y eficiente.

En definitiva, y por finalizar, un archivo binario (.xlsb) tiene un sistema de almacenaje de datos nativo de Excel- BIFF12 (Binary Interchange File Format) y no XML. Recordemos que el formato XML es un formato que Ms creo para adaptarse a las exigencias impuestas de código abierto o libre, que en general consume un número muy alto de recursos.

Cuando los archivos son de un tamaño superior a 1Mb o cuando tienen que ejecutar gran cantidad de código y/o muchos registros, los archivos binarios son sensiblemente más rápidos y además, sin pérdida de fidelidad en formatos, código, datos, etcétera.

En una prueba de un Libro habilitado con macros (.xslm) y convertido a Libro binario (.xlsb), pasé de un tamaño del fichero de 14.408 Kb a 6.432 KB !!!, y ninguna diferencia visible en cuanto a formatos, funcionalidades, macros, objetos, etc.).

7 comentarios: