Excel velikost souboru

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3383
Registrován: 24 říj 2008 19:50

Excel velikost souboru

Příspěvek od atari »

Vytvořil jsem soubor v Excelu s makry, a měl cca 500kB. Když vše vymažu (makra, listy) a zbyde jeden prázdný list, tak soubor má pořád přes 200kb. (Přitom nový prázdny soubor má 7kB.) Jak to lze zmenšit o tech 200kB, nebo vyčistit?
Potřeboval bych ten puvodní soubor aby se o tech 200kB zmenšil z 500 na cca 300kB.
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel velikost souboru

Příspěvek od mike007 »

Vítej na PC-Help

Tady máš makro, které používám na redukci sešitů. Třeba ti pomůže.

Kód: Vybrat vše

Option Explicit 
 
Sub redukce() 
     
    Dim j               As Long 
    Dim k               As Long 
    Dim LastRow         As Long 
    Dim LastCol         As Long 
    Dim ColFormula      As Range 
    Dim RowFormula      As Range 
    Dim ColValue        As Range 
    Dim RowValue        As Range 
    Dim Shp             As Shape 
    Dim ws              As Worksheet 
     
    Application.ScreenUpdating = False 
    Application.DisplayAlerts = False 
     
    On Error Resume Next 
     
    For Each ws In Worksheets 
        With ws 
             On Error Resume Next 
            Set ColFormula = .Cells.Find(What:="*", After:=Range("A1"), LookIn:=xlFormulas, _ 
            LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious) 
            Set ColValue = .Cells.Find(What:="*", After:=Range("A1"), LookIn:=xlValues, _ 
            LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious) 
            Set RowFormula = .Cells.Find(What:="*", After:=Range("A1"), LookIn:=xlFormulas, _ 
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious) 
            Set RowValue = .Cells.Find(What:="*", After:=Range("A1"), LookIn:=xlValues, _ 
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious) 
            On Error Goto 0 
             
            
            If ColFormula Is Nothing Then 
                LastCol = 0 
            Else 
                LastCol = ColFormula.Column 
            End If 
            If Not ColValue Is Nothing Then 
                LastCol = Application.WorksheetFunction.Max(LastCol, ColValue.Column) 
            End If 
             
             
            If RowFormula Is Nothing Then 
                LastRow = 0 
            Else 
                LastRow = RowFormula.Row 
            End If 
            If Not RowValue Is Nothing Then 
                LastRow = Application.WorksheetFunction.Max(LastRow, RowValue.Row) 
            End If 
             
            
            For Each Shp In .Shapes 
                j = 0 
                k = 0 
                On Error Resume Next 
                j = Shp.TopLeftCell.Row 
                k = Shp.TopLeftCell.Column 
                On Error Goto 0 
                If j > 0 And k > 0 Then 
                    Do Until .Cells(j, k).Top > Shp.Top + Shp.Height 
                        j = j + 1 
                    Loop 
                    If j > LastRow Then 
                        LastRow = j 
                    End If 
                    Do Until .Cells(j, k).Left > Shp.Left + Shp.Width 
                        k = k + 1 
                    Loop 
                    If k > LastCol Then 
                        LastCol = k 
                    End If 
                End If 
            Next 
             
            .Range(Cells(1, LastCol + 1).Address & ":IV65536").Delete 
            .Range(Cells(LastRow + 1, 1).Address & ":IV65536").Delete 
        End With 
    Next 
     
    Application.ScreenUpdating = True 
    Application.DisplayAlerts = True 
     
End Sub
Zredukovat svůj sešit můžeš ještě víc, když vymažeš vzorce (převést data na hodnoty), vymažeš formáty, barvy záložek, atd.

Vysvětli mi ale, proč se snažíš zmenšit sešit o velikosti 500Kb. Neřeknu kdyby měl několik Mb, ale tohle ...
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3383
Registrován: 24 říj 2008 19:50

Re: Excel velikost souboru

Příspěvek od atari »

Jde o to, že tech souborů budou spousty (stovky) a potřebuji je přenášet a pracovat s nima. Takže chci mít co nejmennší objem dat.
Tenhle návod nepomohl. Asi jsme si nerozuměli. Vytvořil jsem uplně nový sešit, a z toho 500kB sešitu jsem ručně, otrocky překopíroval všechny makra a data do nového, a ten nový soubor měl jenom 143kB. Takže mám dva sešity, v obouch ty samé data, ale ten první je 2,5x větší (500kB versus 143kB). Je v něm někde "něco skrytého" a to jsem chtěl vyčistit. A vzniká to tím, že s tím sešitem dlouho pracuji (mažu, přidávám, zase mažu, atd) a soubor bobtná a bobtná (ale objem dat v jednotlivých listech je pořád stejný) a já nevím proč.
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel velikost souboru

Příspěvek od mike007 »

Vyzkoušej tento freeware prográmek. Údajně umí zmenšit velikost sešitu až o 70%. Nechce se mi tomu moc dvakrát věřit, ale za test nic nedáš. Dej vědět.

http://www.vbusers.com/downloads/download.asp#item2
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3383
Registrován: 24 říj 2008 19:50

Re: Excel velikost souboru

Příspěvek od atari »

Tak jsem ten program zkoušel a neubral ani byte.... :-(
Uživatelský avatar
warcraftan
Master Level 7
Master Level 7
Příspěvky: 4914
Registrován: 27 zář 2008 12:49
Bydliště: Ostrava

Re: Excel velikost souboru

Příspěvek od warcraftan »

doporucuju si koupit vetsi Disk kdyz te nejakych 500KBk zabije
lol...
"You don't need to say sorry, it's poker" Antonio Esfandiari
"Poker actually isn't about winning or losing, poker is about making a right decision" Doyle Brunson
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3383
Registrován: 24 říj 2008 19:50

Re: Excel velikost souboru

Příspěvek od atari »

Nejde o velikost disku, ale jde mi o to vyřešit proč má soubor 500kB když by měl mít 140kB v Excelu. Je tam nějaký "neviditelný balast" a chci ho odstranit. Když otevřu 10 těchto souborů po 500kB, tak už to zpomaluje docela PC, než kdyby by ty soubory měly 140kB každý.
Uživatelský avatar
X
Elite Level 12.5
Elite Level 12.5
Příspěvky: 19360
Registrován: 22 kvě 2007 11:34
Kontaktovat uživatele:

Re: Excel velikost souboru

Příspěvek od X »

Sám mám jeden soubor v Excelu a má pár desítek MB. Jestli ti to tak vadí, použij:

NXPowerLite 3.6-pro redukci velikosti souborů PowerPoint, Word a Excel. Provádí kompresi grafiky a vložených dokumentů.msi
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel velikost souboru

Příspěvek od mike007 »

atari píše:Tak jsem ten program zkoušel a neubral ani byte.... :-(
Myslel jsem si to :huh:
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
JarZa
nováček
Příspěvky: 25
Registrován: 22 úno 2008 15:36

Re: Excel velikost souboru

Příspěvek od JarZa »

Kam skočí kurzor, když po sobě zmáčkneš klávesy {End} a {Home} ?
Excel si urputně pamatuje poslední buňku na listu, kde původně byla nějaká data nebo formáty. I když vymažeš řádky/sloupce, nepomůže to.
U mě zabírá následující finta - v editoru Visual Basic je podokno Immediate, do něj napiš příkaz
p = ActiveSheet.UsedRange
a zmáčkni Enter. Odkaz na poslední buňku na listu se tímto "zresetuje" a velikost souboru se zmenší.
Viz přiložený obrázek.

Pokud by to nepomohlo, můžeš ten soubor poskytnout? Podíval bych se na to.

JarZa
Přílohy
Velikost_souboru.jpg
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Excel velikost souboru

Příspěvek od mike007 »

JarZa: To sice resetuje. Mimochodem je potřeba zadat jen ActiveSheet.UsedRange, ale to je jedno.
Lepší očistu dělá makro, které jsem tu uvedl v předešlém příspěvku. Jenže co chceš vyčistit v dokumentu, který má pouhopouhých 500kb ... S tím ti nepomůže ani svatej na nebi.
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Uživatelský avatar
Střelec 5
Level 1.5
Level 1.5
Příspěvky: 122
Registrován: 02 srp 2007 12:36
Bydliště: Východní Čechy

Re: Excel velikost souboru

Příspěvek od Střelec 5 »

:-( mě zajímalo jak se podaří tento problém eliminovat.
Mám ten samý problém.
Používáme s kolegy excel 2003 sešity s daty a velikost 1ks sešitu je 3,5 MB za jednu výrobní směnu včetně veškerých výrobních dat.
A to opravdu hodně a takové sešity jsou otevřeny 3 ks na jednou a je problém s odrazováním aktuálních data
( PC hlásí to ztrátu virtuální paměti a tak se musí alespoň jeden zavřít ,aby došlo ke správnému zobrazování).
Proto by mě zajímalo jak obsahově zmenšit sešit,aby zůstala plná funkce včetně všech maker.
Pomůže makro od " JarZa ".???
Střelec 5
Zamčeno
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Velikost souboru a složek na disku
    od L.L » » v Vše ostatní (sw)
    5 Odpovědi
    8329 Zobrazení
    Poslední příspěvek od L.L
  • Přechod z Excel 21 na Excel 24
    od Snekment » » v Kancelářské balíky
    2 Odpovědi
    16554 Zobrazení
    Poslední příspěvek od Snekment
  • Blokování stahovaných souborů
    od Riviera kid » » v Windows 11, 10, 8...
    10 Odpovědi
    9903 Zobrazení
    Poslední příspěvek od Riviera kid
  • Pohoda a excel
    od brownwld » » v Kancelářské balíky
    1 Odpovědi
    8821 Zobrazení
    Poslední příspěvek od atari
  • Excel 2016 - vzorec kombinace podmínek
    od MK_Vs » » v Kancelářské balíky
    5 Odpovědi
    7819 Zobrazení
    Poslední příspěvek od lubo.

Zpět na „Kancelářské balíky“