返回列表 上一主題 發帖

[發問] 有關檔案大小問題

[發問] 有關檔案大小問題

近來我於一個 Excel 檔案內加入 VBA  程式,
每於更改部份程式碼/內容後存檔,
就會發現有一個奇怪的現象,
原 Excel 檔的容量應約為 300 - 400 KB.
但有時候會於該檔案更改少部份內容.
(例如於 Sheet1 的 A1 由  a 改為 b)
檔案的大小就會由 300 多 KB 跳增到 600 - 700KB.
即使馬上開回該檔案把 b 改回 a 也是一樣.
但有時候於使用一段時間後再存檔它又會再次變回小容量.

大家有沒有遇過類似的問題?  問題出在那裡?
(會否與暫存檔有關 ?)

以下幾種情形也會造成表面上看起來無資料,但會占空間..

        1.格式複製(公式、篩選、格式化條件判斷、格式設定)
                公式:C欄位=A欄位+B欄位  若資料只有100列,但公式列卻拉到65535,則101~65535列仍會有此資料空間佔據。
                篩選:同字意,有時會自己不知道有無篩選,進而有空間佔據。
                格式化條件判斷:同字意。
                格式:字體粗細、字型、對齊方式、顏色設定
        2.檔中檔:有時候一個EXCEL檔案內會含很多檔案(如 Userform、Vba Code 、圖片檔、影音檔…)
        3.檔案格式:xls xlsm xlsx 都會有些微差距

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

回復 16# oobird

了解你的意思~~謝謝你.

新年快樂 !!
fangac

TOP

回復 14# fangsc
你試試新開一個新檔,在地址欄輸入a1:z10000, enter後即選中這個範圍,把這個範圍隨便改個格式,例如設置為靠左對齊。
然後存檔,看看檔案有多大。

TOP

殘念…小學生無法down load。
所以依oobird大所言,這算是excel的一種bug嗎?(自我肥大症)
(使用上我也有發現excel跨版本使用時會有一些匪夷所思的bug)

TOP

回復 11# oobird


複製K欄格式到A:J欄,這個答覆對嗎?
不過,只知道A:J欄是空格(搜尋-特殊目標-空格),但看不出來設定了什麼格式,會讓檔案變這麼大.
1

評分人數

    • oobird: 正確答案之一金錢 + 10
fangac

TOP

另外還有一件奇怪的事有關檔案大小…
同樣一個excel檔案(內含相同的VBA code及物件),在同一台pc中直接 "另存新檔"會有兩種情形:
1、(有開巨集),每次另存新檔後的檔案大小皆不相同(有大、有小)
2、(不開巨集),每次另存新檔後的檔案大小皆固定相同。
不知道有寫vba的大大是否也有相同的情形發生????
還是我的vba程式造成??

TOP

fangsc 妳好~ 我比較好奇的是…我的物件一個也沒有少,但只是在2002版本中直接存檔,就立刻瘦身3/4
但是使用上功能又都正常,(物件沒少,function也一樣正常),現實生活中有這麼好康的瘦身方式就好了。 ~"~

TOP

本帖最後由 oobird 於 2012-12-25 13:34 編輯

文件如果設置了格式,檔案就變得肥大,後來就算把格式移除了也不能回復。
這是個簡單的示例文件,裡面什麼都沒有,但檔案很大,依此方式可把一個空白文件變成數百M大的。
通常大家莫明其妙檔案變得很肥大的原因多是這種情形。 Book1.zip (315.77 KB)


第一個說出正確減肥方法的有獎。

TOP

我有遇過, 檔案裡太多的物件,將原本的8MB變成20MB.
原本不知道是物件的關係,直接開一個新的檔案,複製raw data, (要選取真正data的範圍再複製).
再慢慢加上所需的函數,程式,格式....一步一步看檔案大小的變化. 最後才發現是太多的物件讓檔案變得如此大.
fangac

TOP

        靜思自在 : 人的眼睛長在前面,只看到別人的缺點,絲毫看不到自己的缺點。
返回列表 上一主題