Hay varias formas de reducir este tamaño; por ejemplo guardar el archivo en el formato XLSX o bien en XLSB (en binario). Este ultimo guarda el archivo en formato binario, excluyendo todo el formato e información que se almacena en estructuras XML. Otra opción es copiar el contenido del archivo a un Excel nuevo copiando y pegando (o pegando sin formato)
Aun así, es posible que el archivo ocupe bastante. A menudo los formatos de estilo almacenados en celdas vacías incrementan el espacio del archivo, por lo que borrando el formato de las celdas vacías reducirá el tamaño del archivo.
Pero... ¿Cómo saber en un archivo Excel con varias (o cientos) de hojas las que más ocupan? Aquí va el truco ...
Primero hay que renombrar el archivo XLSX a ZIP. Los archivos XLSX son por si archivos comprimidos que contienen, en varios archivos, todo el contendio del libro Excel. Podréis investigar la estructura de carpetas y saber que archivos ocupan más...
Dentro del archivo, en la carpeta xl\worksheets vereis, por cada hoja un archivo nombrado como sheetXX.xml y el espacio ocupado sin comprimir/comprimido.
En el ejemplo veréis una hoja de Excel con 87 Hojas y concretamente la 85 que ocupa +300Mb descomprimida.
Para saber a que hoja se corresponde cada archivo, está la relación en el archivo workbook.xml. Vereis en formato XML como se relaciona ID del archivo (85 en mi caso) con el nombre que tiene la Hoja de Excel.
En primer lugar convertí la hoja Excel XLS a formato XLSX. Renombre el archivo a ZIP y revise que hojas ocupaban mas (carpeta xl/worksheets dentro del archivo comprimido). Borré el formato de las celdas vacías y guardé el documento de nuevo en formato binario XLSB.
Estos archivos crecen especialmente al importar datos de otras fuentes y pegarlos en la hoja de datos (palabras clave, campañas adwords, reports del Analytics, ...)