• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

bestand ineens extreem groot

Status
Niet open voor verdere reacties.

vrouw

Terugkerende gebruiker
Lid geworden
27 mrt 2010
Berichten
1.434
Hoi.

Ik ben met een bestandje bezig en na wat bewerkingen zoals kleuren en grafieken is die van 60,1KB naar 17,8MB gegaan!!:shocked:
Er staat slechts weinig data in.(enkele tientallen regels)
Iemand een idee hoe dat kan en hoe ik hem weer klein kan krijgen zonder dat ik alles weet overnieuw moet maken?:eek:
 
verwijder alle (schijnbaar) lege cellen eens
 
Huh:rolleyes: je bedoeld alle regels die niet gebruikt word verwijderen? dus tot 65000 of zoiets?
 
Draai deze macro eens:

Code:
Sub M_snb()
    For Each cn In UsedRange.Columns
      x = Application.Max(x, Cells(Rows.Count, cn.Column).End(xlUp).Row)
    Next
    For Each rw In UsedRange.Rows
      y = Application.Max(y, Cells(rw.Row, Columns.Count).End(xlToLeft).Column)
    Next
    
    MsgBox "Usedrange: " & vbTab & UsedRange.Address(0, 0) & vbLf & vbLf & "Gegevensgebied: " & vbTab & "A1:" & Cells(x, y).Address(0, 0)
End Sub
 
Foutmelding in de eerste regel van de macro:(runtime error 424
For Each cn In UsedRange.Columns
 
Laatst bewerkt door een moderator:
Dan zet je er toch gewoon de werkbladnaam voor:

Code:
Sub M_snb()
    For Each cn In sheets(1).UsedRange.Columns
      x = Application.Max(x, Cells(Rows.Count, cn.Column).End(xlUp).Row)
    Next
    For Each rw In sheets(1).UsedRange.Rows
      y = Application.Max(y, Cells(rw.Row, Columns.Count).End(xlToLeft).Column)
    Next
    
    MsgBox "Usedrange: " & vbTab & sheets(1).UsedRange.Address(0, 0) & vbLf & vbLf & "Gegevensgebied: " & vbTab & "A1:" & Cells(x, y).Address(0, 0)
End Sub
 
Oké, en dan geeft ie aan:
usedrange: A:IU
gegevensgebied: A1:O201

Niets schokkends lijkt me?
 
lijkt me wel :

- kolom P t/m IU verwijderen
- rij 202 t/m 65326 verwijderen.
- bestand opslaan en sluiten
- bestand opnieuw openen: een stuk kleiner !
 
als ik als test rij 65563 zeg verwijderen blijft die rij gewoon staan!:eek:
 
vrouw,
in Excel blijven alle rijen ALTIJD staan, wat je ook doet.
Wat snb je aanbeveelt (een jkuiste en zéér goede aanbeveling!) is om alle niet gebruikte rijen volledig leeg te maken.
 
vrouw,
in Excel blijven alle rijen ALTIJD staan, wat je ook doet.
Wat snb je aanbeveelt (een jkuiste en zéér goede aanbeveling!) is om alle niet gebruikte rijen volledig leeg te maken.


OHH, leeg maken. Dat staat er niet. hij schrijft nl:
- kolom P t/m IU verwijderen
- rij 202 t/m 65326 verwijderen.

Ene ik weet het zeker niet beter, in tegendeel....
 
Je kunt rijen fysiek niet verwijderen, maar als je rijen selecteert, kun je wel degelijk de optie Verwijderen kiezen. En die maakt de rijen dus netjes leeg.
 
oké, hij is nu 1.53MB. Nog fors voor een excel bestandje lijkt me maar is mee te werken.
 
heb je het "verwijderen" toegepast op elk werkblad?
 
Ha, dat zal ik nog ff doen.
Hoe kan je het snelste alle regels selecteren?
 
voor wie het verschil niet kent tussen .clear, .clearcontents en .delete

Code:
Sub M_snb()
    For Each cn In UsedRange.Columns
      x = Application.Max(x, Cells(Rows.Count, cn.Column).End(xlUp).Row)
    Next
    For Each rw In UsedRange.Rows
      y = Application.Max(y, Cells(rw.Row, Columns.Count).End(xlToLeft).Column)
    Next
    
    Rows(x + 1).Resize(Rows.Count - x).Delete
    Columns(y + 1).Resize(, Columns.Count - y).Delete
End Sub
 
handmatig kun je als je de eerste lege regel weet en deze rij selecteert, met Shift + Ctrl + pijltjestoets down alle regels eronder selecteren.
Hierna rechtermuisknop en verwijderen.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan