在我工作的公司,我們有一個 Excel 電子表格來追蹤公司去年的採購情況。該工作表大約有 1500 行和 30 列。
幾天前,此表中的過濾開始變得非常慢。過濾任何列中的任何關鍵字大約需要 5 秒。這很長,因為這張表被過濾了很多,而且很煩人。該工作表沒有任何公式或其他工作表或文件的引用。有兩個巨集在單元格更改時運行,但禁用這兩個巨集並不會使其速度更快。
我還嘗試刪除除一行之外的每一行,但將篩選器應用於剩餘行仍需要 5 秒鐘才能完成。
有人知道為什麼這麼慢?
答案1
通常會發生這種情況,因為 Excel 認為資料集比實際資料大得多。例如,如果有人導航到儲存格 A1048576 並對其進行格式化,即使它看起來可能沒有什麼不同,現在 Excel 也會認為您有超過一百萬行。透過選擇儲存格 A1 然後按 CTRL + End 進行測試。這將帶您到 Excel 認為是工作表中最後一個儲存格的位置。如果這是問題所在,您可以刪除實際資料結束位置之後的所有行和/或列,儲存文件,關閉它,然後重新開啟它。這應該會阻止 Excel 將所有這些空白儲存格視為資料的一部分。如果這不起作用,選擇您的資料並將其貼到新檔案中應該可以修復它。
答案2
- 選出全部 ( Ctrl+ A)
- 前往首頁 -> 編輯 -> 清除 -> 清除格式。
- 儲存檔案並重新套用過濾器。
你完成了。每次都對我有用;請告訴我它是否適合您!
答案3
可能已經太晚了,但是請關閉自動計算。在 VBA 中,我使用這兩個關閉自動計算,套用過濾器,然後重新開啟自動計算。
Sub automatic_update_on()
Application.Calculation = xlAutomatic
End Sub
Sub automatic_update_off()
Application.Calculation = xlManual
End Sub
答案4
就我而言,它有助於刪除所有評論。對於包含 100,000 多個條目的表,過濾時間從 1.5 分鐘縮短到不到一秒。