sábado, 24 de diciembre de 2011

Reducir al máximo el tamaño de un archivo Excel 2007-10


En esta ocasión ofrecemos con este post un truco.

Se trata de conseguir que un archivo de Excel 2007 ó 2010 tenga el mínimo tamaño posible, pero que siga siendo un archivo Excel con el que podemos trabajar directamente (no dejándolo en formato .zip o .rar).  Esto es útil porque en ocasiones, tenemos que "batallar" con archivos Excel que contienen miles de registros, formatos, imágenes, código VBA, etc. y todo ello sobredimensiona el tamaño del archivo y lo convierte en incómodo de manejar, enviar por e-mail, etc.

Previamente debemos conocer que los nuevos archivos de Excel de formato XML, son "armarios"  o "cabinets" (en inglés) que contienen otros archivos a su vez. Si conseguimos abrir esos "armarios" mediante un programa compresor/descompresor como winzip , winrar o The Extractor o mediante el propio Windows 7 (lo tiene integrado), podremos realizar una nueva compresión de los archivos que contiene en el interior. Veamos paso a paso como hacerlo, es muy fácil:

1) Cambiamos la extensión del archivo Excel ...






... a una extensión como .zip




Antes de cambiar el nombre, Excel avisa de que al cambiar la extensión del archivo podríamos dejarlo inutilizado, pero no debemos hacer caso y tenemos que "Aceptar". Por otro lado, tenemos que decir que, en el caso de que no veamos las extensiones de los archivos en nuestro Explorador, tenemos que desmarcar la siguiente casilla de las opciones de carpeta del Explorador de Archivos de Windows.:


2) Descomprimimos el archivo mediante nuestro descompresor y obtenemos los siguientes archivos:


... este es el contenido de un archivo con extensión .xlsx.

3) Seleccionamos los 4 archivos anteriores y los comprimimos nuevamente con nuestro compresor, volviendo a obtener:


... aunque vemos que esta vez tiene 1.717 Kb, es decir, 343 Kb menos que el original, lo que equivale a un 16,65 % de reducción del tamaño.

4) Sólo resta volver a cambiar el nombre al archivo como el original:


y comprobar que funciona perfectamente.

Por último, comentar que en el ejemplo el archivo era de extensión .xlsm (habilitado para contener macros), pero esta técnica, por supuesto, también funciona con la extensión .xlsx que es la "normal".

Otra opción

Tenemos que recordar (ver el artículo "Significado de las extensiones de archivos Excel") que existe un tipo de archivo Excel llamado "binario" cuya extensión es  .xlsb, que tiene una estructura que optimiza el tamaño del archivo al máximo (hace de forma automática e interna lo que hemos explicado por pasos anteriormente en este artículo).

Es decir, si convertimos cualquier archivo de Excel a extensión .xlsb (mediante "Guardar como"), automáticamente obtendremos una optimización máxima del rendimiento y tamaño del archivo, pudiendo funcionar exactamente igual con él. Es una opción conveniente para archivos muy grandes que trabajan con miles de registros, muchas imágenes, etc.







4 comentarios:

  1. hola que tal muy buen tip, una pregunta ¿ si ese archivo lo utilizo como un formato solamente requiero guardarlo una sola vez con la extensión xlsb, o cada ves que haga un nuevo archivo debo de hacerlo??, gracias

    ResponderEliminar
  2. Le escribo ya que tengo varios archivo de Excel bastante cargados y estoy pensando en la idea de pasarlos a extensión binaria .xlsb y la verdad que de Excel conozco lo Muy Básico, por lo que tengo mis dudas sobre el paso a dar, quisiera ver si pudiera ahondar un poco más en este tipo de archivos. Gracias.

    Saludos
    Lázaro

    ResponderEliminar
  3. Gracias por su ayuda, pero siguiendo todos los pasos comentados me da error a la hora de abrirlo: Excel no puede abrir el archivo porque el formato o extensión de éste no son válidos.
    Le agradecería me dijera cual es mi error.

    gracias de nuevo y un saludo

    ResponderEliminar
  4. Muchas gracias, lo hice con RAR y el peso se redujo a la mitad.

    ResponderEliminar