Cure d'amaigrississement pour fichier Excel devenu obèse


Bien des choses peuvent être à l'origine d'une crise d'embompoint chez le classeur Excel. Mais la raison la plus courante est une zone de travail qui s'étend sur un très grand nombre de cellules.
Si le fichier nécessite un très grand nombre de cellules, pas de solution miracle.
Par contre, il arrive que la zone de travail soit beaucoup plus vaste que nécessaire.
Pour s'en assurer, dans la page Excel, cliquer sur Edition / Atteindre / Cellules / Dernière cellule.
Si la dernière cellule ainsi sélectionnée se trouve très loin en dessous ou à droite de la zone réellement utilisée, il y a matière à amélioration.
La dernière cellule, même si elle peut sembler vide, ne l'est pas réellement. Elle peut conserver les traces d'un ancien contenu (sous forme d'une chaine de caractères vide) ou bien un format particulier.
Excel va devoir enregistrer toutes les informations concernant toutes les cellules comprises entre la première cellule et cette dernière cellule, ce qui explique souvent la taille exagérée de certains fichiers.

Pour réduire la taille du fichier, il suffit de supprimer toutes les cellules inutiles :

Manuellement :
Sélectionner toutes les lignes "vides" comprises entre la première ligne vide et la ligne de la "dernière cellule", puis les supprimer par Edition / Supprimer.
Puis faire de même avec les colonnes "vides".
Enregistrer le fichier et le placer sur le pèse bébé pour admirer le résultat.

Par macro :
Executer la macro suivante (qui fait la même chose) : Sub ménage()
Range(Cells.SpecialCells(xlCellTypeLastCell).EntireRow, Cells.Find("*", , , , xlByRows, xlPrevious).EntireRow).Offset(1, 0).Delete
Range(Cells.SpecialCells(xlCellTypeLastCell).EntireColumn, Cells.Find("*", , , , xlByColumns, xlPrevious).EntireColumn).Offset(0, 1).Delete
ActiveWorkbook.Save
End Sub
(attention, macro sur 5 lignes)
Pour comprendre le fonctionnement de la macro, voir les commentaires sur la dernière cellule (cliquez ici).


Un conseil,
Si vous devez utiliser des formats particuliers sur un grand tableau (encadrements, formats de polices, de nombres...), appliquez les formats sur des colonnes (ou lignes) ENTIERES, et non sur un grand nombre de cellules d'une même colonne (ou ligne). Excel enregistre le format de la ligne d'un coup au lieu de l'enregistrer cellule par cellule, ce qui permet un gain de place considérable.