Share via


如何清理 Excel 活頁簿,使其使用更少的記憶體

徵狀

在升級為 Office 2013/2016/Microsoft 365 之後,您會遇到下列一或多個徵狀:

  • 當您開啟多個 Microsoft Excel 2013 活頁簿、儲存 Excel 活頁簿或在 Excel 活頁簿進行計算時,電腦會使用更多記憶體。

  • 您在升級為 Excel 2013/2016 之前,您無法再在相同的執行個體中開啟許多 Excel 活頁簿。

  • 當您在 Excel 活頁簿中插入欄時,會收到有關可用記憶體的錯誤。

  • 使用 Excel 試算表工作時收到下列錯誤訊息:

    There isn't enough memory to complete this action.
    Try using less data or closing other applications.
    To increase memory availability, consider:
       - Using a 64-bit version of Microsoft Excel.
       - Adding memory to your device.
    

當您使用 Excel 活頁簿時,沒有足夠記憶體可完成此動作的錯誤相關詳細資料。

原因

從 Excel 2013 開始,已進行改進,需要比舊版所需更多的系統資源。 本文確定了使用大量記憶體之 Excel 活頁簿中的區域,並說明如何讓活頁簿檔案運作更有效率。

如需在 Excel 2013 中所做變更的詳細資訊,請參閱 32 位元版本 Excel 2013 中的記憶體使用量

解決方案

若要解決此問題,請依照順序執行下列方法。 如果您嘗試其中一個方法但沒效果,請繼續執行下一個方法。

注意事項

許多 Excel 活頁簿有幾個問題可能會引起問題。 在您消除這些問題之後,您的活頁簿應能順利運作。

格式考慮

格式設定可能會造成 Excel 的活頁簿變得太大,以致無法正常運作。 由於格式設定問題,經常會導致 Excel 停止回應或當機。

方法1:消除過多的格式設定

Excel 活頁簿中格式設定過度會導致檔案變大,並可能導致效能不良。 如果您使用色彩或框線格式設定整欄或列,則會將格式設定視為過度。 當需要從網頁或資料庫複製或匯入資料進行格式設定時,也會發生此問題。 若要清除多餘的格式設定,請使用 在工作表上清除多餘儲存格格式的格式清除附加元件。

如果您在清除多餘格式設定之後仍遇到問題,請繼續嘗試方法 2。

方法 2:移除未使用的樣式

您可以使用樣式來標準化整個活頁簿中所用的格式。 當儲存格從一個活頁簿複製到另一個時,也會複製其樣式。 當您儲存回較舊的檔案版本時,這些樣式會持續增大檔案,而且可能會最終導致 Excel 中出現「太多不同的儲存格格式」錯誤訊息。

有許多工具可用,可移除未使用的樣式。 只要您使用的是 XML 型 Excel 活頁簿 (,也就是 .xlsx 檔案或 xlsm 檔案) ,您就可以使用樣式清除工具。 如需尋找此工具,請參閱此處

如果您在移除任何未使用的樣式之後仍遇到問題,請嘗試方法 3。

方法 3:移除圖形

在試算表中新增許多圖形時,也需要使用大量的記憶體。 圖形定義為位於 Excel 格線的任何物件。 部分範例如下:

  • 圖表
  • 繪製圖形
  • 註解
  • 美工圖案
  • SmartArt
  • 圖片
  • 文字藝術師

這些物件會經常從網頁或其他工作表進行複製,而且會隱藏或彼此重疊。 使用者通常並沒有意識到這些情況。

若要檢查此徒刑,請依照下列步驟執行:

  1. 在 [首頁] 功能區上,按一下 [尋找並選取],然後按一下 [選取窗格]
  2. 按一下 [此工作表上的圖案]。 圖形會顯示在清單中。
  3. 移除任何不需要的圖形。 (眼睛圖示會指出圖形是否可見。 )
  4. 針對每一個工作表重複執行步驟 1 到步驟 3。

如果您在移除圖形之後仍遇到問題,您應檢查與格式設定無關的考量事項。

方法 4:移除格式設定的條件

設定格式設定的條件可能導致檔案變大。 當檔案中的條件化格式設定損毀時,就會發生這種情況。 您可以移除條件化的格式設定,作為測試以查看問題是否在於格式設定中的損毀。 若要移除條件化格式設定,請依照下列步驟執行:

  1. 儲存檔案的備份。
  2. 在 [首頁] 功能區上,按一下 [條件化格式設定]
  3. 清除整個工作表中的規則。
  4. 針對活頁簿中的每一個工作表執行步驟 2 和 3。
  5. 以不同檔案名稱儲存活頁簿。
  6. 判斷該問題是否已解決。

如果移除條件化格式設定可以解決問題,您可以開啟原始活頁簿、移除條件化格式設定,然後重新套用。

問題仍然存在嗎?

如果這些方法都不奏效,您可以考慮移至 64 位元版本的 Excel、將問題活頁簿分割成不同的活頁簿,或與支援人員聯絡以進行其他疑難排解。

計算考量

除了格式設定之外,計算也可能導致 Excel 中的當機和停止回應問題。

方法 1:在最新版本的 Excel 中開啟活頁簿

如果活頁簿包含大量的計算,在新版本 Excel 中第一次開啟 Excel 活頁簿可能需要很長的時間。 若第一次開啟活頁簿,Excel 必須重新計算活頁簿,並確認活頁簿中的值。 如需詳細資訊,請參閱下列文章:

如果檔案在 Excel 完全重新計算檔案並儲存檔案後仍開啟緩慢,請嘗試方法 2。

方法 2:公式

請查看您的活頁簿,並檢查所使用的公式種類。 有些公式會佔用大量記憶體。 這包括下列陣列公式:

  • 查閱
  • INDIRECT
  • 位移
  • INDEX
  • 匹配

使用它們無妨。 不過,請留意您引用的範圍。

引用整欄的公式可能會導致 .xlsx 檔案的效能不良。 格線大小從 65,536 列增加到 1,048,576 列,而從 256 (IV) 欄增加到 16,384 (XFD) 欄。 雖然不是最佳作法,但建立公式的常見方式仍是引用整欄。 如果您只引用舊版本中的一欄,則只包含 65,536 個儲存格。 在新版本中,您引用的是超過 1,000,000 欄。

假設您有下列 VLOOKUP:

=VLOOKUP(A1,$D:$M,2,FALSE) 

在 Excel 2003 及更早版本中,此 VLOOKUP 引用的整列中只包含 655,560 個儲存格 (10 欄 x 65,536 列)。 不過,使用新的較大格線時,相同的公式會引用幾乎 10,500,000 個儲存格 (10 個欄 x 1,048,576 列 = 10,485,760)。

這已在 Office 2016/365 1708 16.0.8431.2079 及更新版本中修正。 如需如何更新 Office 的詳細資訊,請參閱安裝 Office 更新

對於舊版的 Office,您可能需要重新構建公式,以便只參照公式所需的儲存格。

注意事項

請檢查您定義的名稱,確定您沒有其他參考整欄或多列的公式。

注意事項

如果您使用整列,也會發生此案例。

如果您在為了只參照所使用的儲存格而變更公式後,仍持續遇到此問題,請移至方法 3。

方法 3:在活頁簿中計算

限制跨活頁簿進行計算的公式。 這一點很重要,有兩個原因:

  • 您正嘗試透過網路開啟檔案。
  • Excel 會嘗試計算大量的資料。

不需要在網路上進行計算,只要在一活頁簿中包含公式,然後建立從一個活頁簿到另一個活頁簿的簡易連結。

如果您在為了只參照儲存格,而不是計算整個活頁簿的變更公式後,仍持續遇到此問題,請移至方法 4。

方法 4:動態函數

限制在活頁簿中使用動態函數的功能。 您不需要有數百個使用 TODAY 或 NOW 函數的儲存格。 如果您必須在試算表中有目前的日期和時間,請使用函數一次,然後透過定義的連結名稱來參照函數。

如果您在限制動態函數之後仍遇到此問題,請移至方法 5。

方法 5:陣列公式

陣列公式很強大。 但必須正確使用。 很重要的一點是不要對陣列新增非必須的儲存格。 當陣列中的儲存格有需要計算的公式時,會針對該公式中所參照的所有儲存格進行計算。

如需陣列運作方式的詳細資訊,請參閱Excel 2010 效能:最佳化效能障礙的秘訣

如果您在更新陣列公式之後仍遇到此問題,請移至方法 6。

方法 6:定義的名稱

定義的名稱是用來參照整個活頁簿中的儲存格和公式,以將「易記名稱」新增至您的公式。 您應該檢查是否有任何已定義的名稱可連結至其他活頁簿或臨時網際網路檔案。 一般來說,這些連結是不必要的,而且會減慢 Excel 活頁簿的開啟速度。

您可以使用名稱管理員工具來查看您在 Excel 介面中看不到的隱藏定義的名稱。 這個工具可讓您查看和刪除您不需要的定義名稱。

在您移除任何不必要的定義名稱後,如果 Excel 仍持續損毀,請移至方法 7。

Excel 的強項是擁有從其他試算表中引入即時資料的能力。 請清查檔案及其連結的外部檔案。 Excel 對可連結的 Excel 活頁簿數量沒有限制,但您可能會遇到數個問題。 測試不含連結的檔案,以判斷問題是否在此檔案或在其中一個連結的檔案中。

繼續

這些是在 Excel 中導致無回應和損毀的最常見問題。 如果您仍在 Excel 中遇到無回應和損毀,您應該考慮使用 Microsoft 開啟支援票證。

其他相關資訊

如果這些方法都沒有差別,您應該考慮移至 64 位元版本的 Excel,或將問題活頁簿分隔成不同的活頁簿。

如何疑難排解 Excel 中的「可用資源」錯誤

Excel:如何在 Excel 活頁簿中疑難排解損毀和無回應的問題