當公式回傳多個結果或樞紐分析表範圍未為空白,且 Excel 無法將結果回傳到網格時,會回傳 #SPILL 錯誤。 如需這些錯誤類型的詳細資訊,請參閱下列說明主題:
附註: 樞紐分析表 #SPILL! 目前已提供給 Microsoft 365 Insider 計畫的參與者。
當溢出陣列公式或樞紐分析表範圍的溢出範圍不是空白時,會發生此錯誤。
選擇包含 #SPILL 的儲存格! 錯誤顯示虛線邊框,顯示預定溢出範圍。 選擇包含 #SPILL 的儲存格! 錯誤,錯誤檢查警示會跳出。
選擇錯誤檢查警示,並選擇 「選擇阻塞儲存格 」選項,即可立即進入阻塞儲存格 () 。 之後,您可以刪除或移動阻礙儲存格的輸入來清除錯誤。 一旦障礙物被清除,陣列公式就會溢出,或樞紐分析表會如預期般展開。
例如,當如下列範例所示在儲存格 E2 中放置公式 =VLOOKUP(A:A,A:C,2,FALSE) 時,公式先前只會在儲存格 A2 中查閱識別碼。 不過,在動態陣列 Excel 中,公式會造成 #SPILL! 錯誤是因為 Excel 會查詢整個欄位,回傳 1,048,576 個結果,並會到達 Excel 網格的末尾。
解決這個問題有三種簡單方法:
|
# |
方法 |
公式 |
|---|---|---|
|
1 |
只參照您感興趣的查閱值。 這種公式會回傳 動態陣列, 但 無法支援 Excel 表格。
|
=VLOOKUP(A2:A7,A:C,2,FALSE) |
|
2 |
只參照同一列的值,然後向下複製公式。 此傳統公式樣式適用於表格,但不會傳回動態陣列。
|
=VLOOKUP(A2,A:C,2,FALSE) |
|
3 |
要求 Excel 使用 @ 運算子執行隱含交集,然後向下複製公式。 此公式樣式可在表格中使用,但是不會傳回動態陣列。
|
=VLOOKUP(@A:A,A:C,2,FALSE) |
Excel 表格不支援溢出的陣列公式。 試著把公式移出表格,或將表格轉換成範圍 (選擇表格設計 > 工具 > 轉換為範圍) 。
您嘗試輸入的溢出陣列公式造成 Excel 記憶體不足。 請嘗試參照較小的陣列或範圍。
溢出的陣列公式無法溢出到合併的儲存格中。 請取消合併有問題的儲存格,或將公式移至未與合併儲存格交集的另一個範圍。
選擇公式即可顯示虛線邊框,顯示預期的溢出範圍。 選擇公式後,會出現錯誤檢查警示。
你可以選擇錯誤檢查警報,並選擇 「選擇阻塞儲存格 」選項,立刻進入阻塞儲存格 (s) 。 清除合併儲存格後,陣列公式就會如預期溢出。
Excel 無法識別或無法調解此錯誤的原因。 請確定您的公式包含您案例的所有所需引數。
需要更多協助嗎?
另請參閱
您可以隨時詢問 Excel 技術社群中的專家,或在社群中取得支援。