Comment alléger un fichier?

anthoYS

XLDnaute Barbatruc
Bonjour,

J'ai actuellement un fichier lourd de plus de 7 Mo. Qu'est-ce qui prend le plus de poids? Et le problème est qu'il ralentit beaucoup maintenant, je veux dire, il y a un temps de recherche après des données soient rentrés... :(

J'ai une cinquantaine d'onglets colorés... Avec certains qui ont beaucoup de lignes... Est-ce les images (peu nombreuses)?
Je sais qu'il y a 2-3 mois il ne pesait que 3,5 Mo...:confus
D'ou vient alors cet alourdissement soudain?

Merci à ceux qui ont une idée
ed:
 

JNP

XLDnaute Barbatruc
Re : Comment alléger un fichier?

Salut Anthoys :),
Ton fichier est en compatible 97-2003 (XLS) ou en 2007 (XSLX, XLSM) ?
Si tu es passé de 2007 vers du compatible 97-2003, tu multiplies ton poids de fichier par 2 minimum... Car 2007 est de l'XML compressé ZIP, contrairement au XLS qui est du natif.
Bon WE :cool:
 

Brigitte

XLDnaute Barbatruc

Hulk

XLDnaute Barbatruc
Re : Comment alléger un fichier?

Hello Anthoys, Jnp :)

Sur toutes les feuilles, fais Edition/Atteindre/Cellules/Objets/Ok

Là, tous les objets (images, lignes, formes) qu'il y a dans la feuille seront sélectionnés... Peut-être il y en a en trop.



Edit : Coucou Brigitte.. Biz :)
 
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : Comment alléger un fichier?

Re,

Euh je l'ai utilisé, mais y a bien longtemps ; aussi, je ne me souviens plus.

Je pense que c'est tout à fait normal que cela te demande d'activer les macros, cela fait souvent ca avec des macros venues d'un autre pc, si on est au niveau de sécurité HAUT.

Maintenant, je crois que cette appli a été utilisée par plein de gens (voir le nombre de téléchargements) et que David ne l'aurait pas laissée, si danger.

Regarde encore ici ce qui en est dit :

https://www.excel-downloads.com/threads/gestion-de-memoir-sous-excel-et-vba.30317/

Merci Gérard pour le Freeware Karcher.xla. Entre nous, ce petit programme fait des miracles, je l’avoue! Mon application a passé de 10MK a 400K. Sérieusement ce truc est fabuleux.

Toute fois, quand j’ajoute des nouvelles données dans une ligne dans n’importe quelle feuille et que je fais Ctrl-s (enregistrer) alors la taille de mon fichier revient, quasiment a 8000Kb.

Il ne dit pas dans le descriptif, Frédéric Lhommé s'il faut laisser le fichier ouvert ou fermé ?

Peux pas t'aider plus, malheureusement.

Bisous Antonio.
 
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : Comment alléger un fichier?

Re,

Je suis bien trop incompétente pour t'aider, mais peut être que tu as ouvert la xla et aussi que tu l'utilises en même temps, peut être que ton fichier est "caché" (mais je le trouve pas dans excel 2007, car dans 2003, c'est une histoire de fenêtre/afficher ou masquer un fichier).

Si qqun passe par là et sait utiliser Karcher, il sera le bienvenu, moi je peux pas plusss, désolée, vraiment.

A BIENTOT
 

néné06

XLDnaute Accro
Re : Comment alléger un fichier?

Bonjour Anthoys, Bonjour le Forum

J'avais le meme probleme de prise de poids par les photos.
Regarde la discussion ou j'ai trouvé une petite solution.
Dans néné06
---- Copie "image1" de feuil Excel sur bureau--

Cordialement

Néné06
 

guigui76

XLDnaute Occasionnel
Re : Comment alléger un fichier?

Une solution que j'ai trouvé hier sur un forum désolé pour la source, je ne l'ai plus.
Je l'ai utilisé sur un fichier de 25 mo, il est passé à 11 mo.
bref du bonheur.

Code:
Sub Nettoie()

Dim Sht As Worksheet, DCell As Range
Dim DxCell As Range
Dim Calc As Long, Rien As String

On Error Resume Next
Calc = Application.Calculation

With Application
.Calculation = xlCalculationManual
.StatusBar = "Nettoyage en cours"
.EnableCancelKey = xlErrorHandler
.ScreenUpdating = False
End With

For Each Sht In Worksheets
If Sht.UsedRange.Address <> "$A$1" Or _
Not IsEmpty(Sht.[A1]) Then
Set DCell = Sht.Cells.Find("*", _
, xlFormulas, , xlByRows, xlPrevious)(2)
If Not DCell Is Nothing Then
Sht.Range(DCell, Sht.Cells([A:A].Count, 1)). _
EntireRow.Clear
Set DCell = Nothing
Set DxCell = Sht.Cells.Find("*", , xlFormulas, _
, xlByColumns, xlPrevious)(2)

If Not DxCell Is Nothing Then
Sht.Range(DxCell.Offset(, 1), Sht.[IV1]). _
EntireColumn.Clear
End If
Rien = Sht.UsedRange.Address
End If
End If
Next Sht
Application.StatusBar = False
Application.Calculation = Calc
MsgBox "g"
End Sub
 

Statistiques des forums

Discussions
312 177
Messages
2 085 976
Membres
103 077
dernier inscrit
kamel26asus