#REF! 錯誤會顯示公式何時參照無效的儲存格。 當參照儲存格的公式遭到刪除或被貼上的內容覆蓋時,最常發生這種情形。
下列範例在欄 E 中使用公式 =SUM(B2,C2,D2)。
如果您要刪除欄 B、C 或 D,則會造成 #REF! 錯誤。 在此案例中,我們會刪除欄 C (2007 銷售額),而公式現在會變成 =SUM(B2,#REF!,C2)。 當您使用像這樣的明確儲存格參照時, (個別引用每個儲存格,以逗號) 分隔並刪除引用的列或欄,Excel 無法解析它,因此它會傳回 #REF! 錯誤。 這就是為什麼不建議在函數中使用明確儲存格參照的主因。
解決方法
-
如果您不小心刪除了行或列,您可以立即選擇快速訪問工具欄 (上的“撤消”按鈕,或按 CTRL+Z) 恢復它們。
-
將公式調整為使用範圍參照 (而不是個別儲存格),例如 =SUM(B2:D2)。 現在您可以刪除加總範圍內的任何欄,而 Excel 會自動調整公式。 您也可以使用 =SUM(B2:B5) 取得各列的加總。
在下列範例中,=VLOOKUP(A8,A2:D5,5,FALSE) 會傳回 #REF! 錯誤,因為它正在尋找要從資料行 5 傳回的值,但參考範圍是 A:D,也只有 4 個資料行。
解決方法
將範圍調整為較大,或減少資料行查閱值以符合參考範圍。 就如同 =VLOOKUP(A8,A2:D5,4,FALSE) 一樣,=VLOOKUP(A8,A2:E5,5,FALSE) 會是有效的參照範圍。
在此範例中,公式 =INDEX(B2:E5,5,5) 傳回 #REF! 錯誤,因為 INDEX 範圍是 4 行 x 4 列,但公式要求返回第 5 行和第 5 列中的內容。
解決方法
將列或欄參照調整為在 INDEX 查閱範圍內。 INDEX(B2:E5,4,4) 就會傳回有效的值。
不支援連結活頁簿中資料表和資料行名稱的結構化參考。
不支援連結活頁簿的計算參考。
移動或刪除儲存格導致儲存格引用無效,或函數傳回引用錯誤。
如果您已使用的物件連結與嵌入 (OLE) 連結傳回 #REF! 錯誤,則請啟動連結正在呼叫的程式。
附註: OLE 是一種可用來在程式之間共用資訊的技術。
如果您已使用的動態資料交換 (DDE) 主題傳回 #REF! 錯誤,請先檢查以確保您引用的主題正確。 如果您仍然收到 #REF! 錯誤,請檢查您的 信任中心設定 是否有外部內容,如封鎖 或解除封鎖 Microsoft 365 檔中的外部內容中所述。
附註: 動態資料交換 (DDE)是一種已建立的通訊協定,用於在Microsoft Windows 型程式之間交換資料。
巨集問題
如果巨集在工作表上輸入的函數引用函數上方的儲存格,而包含該函數的儲存格位於第 1 列,則函數將傳回 #REF! 因為第 1 列上方沒有儲存格。 檢查函數以查看引數是否引用無效的單元格或單元格範圍。 這可能需要在 Visual Basic 編輯器 (VBE) 中編輯巨集,以考慮這種情況。
需要更多協助嗎?
您可以隨時詢問 Excel 技術社群中的專家,或在社群中取得支援。