如何避免 Excel 中的公式出錯
Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016 Excel for iPad Excel for Android tablets

如果 Excel 無法解決您嘗試建立的公式,您可能會收到如下所示的錯誤訊息:

Excel 的「此公式有問題」對話方塊的影像

很抱歉,這表示 Excel 無法了解您嘗試執行的動作,因此您必須更新公式或確定您正確使用函數。 

有一些常見函式可能會遇到問題。 若要深入瞭解,請查看 COUNTIFSUMIFVLOOKUPIF。 您也可以查看這裡的函數清單。

回到公式出錯的儲存格,其將處於編輯模式,而 Excel 會醒目提示發生問題的位置。 如果此時您在該處仍不知道如何處理而想要從頭開始,您可以再按一次 ESC,或選取資料編輯列中的 [取消] 按鈕以結束編輯模式。

資料編輯列取消按鈕的影像

如果您想要繼續進行,以下檢查清單提供的疑難排解步驟可協助您釐清可能出錯的原因。 選取標題以深入了解。

如果您使用的是 Microsoft 365 網頁版,可能不會看到相同的錯誤,或解決方案可能不適用。

具有一個以上參數的公式會使用清單分隔符號來分隔其參數。 使用哪個分隔符號可能會根據您的作業系統區域設定和 Excel 設定而有所不同。 最常見的清單分隔符號是逗號「,」和分號「;」。

如果公式中的任何函式使用了錯誤的分隔符號,公式便會失效。

如需詳細資訊,請參閱: 清單分隔符號設定不正確時的公式錯誤 

Excel 會擲出各種井字號 (#) 錯誤 (例如,#VALUE!、#REF!、#NUM、#N/A、#DIV/0!、#NAME? 和 #NULL!) 以指出公式中無法正確運作的位置。 例如,#VALUE! 錯誤發生的原因是不正確的格式設定或引數中有不支援的資料類型。 或者,您將看到 #REF! 錯誤,前提是公式參照的儲存格已刪除或已取代為其他資料。 每個錯誤的疑難排解指南都會不同。

#### 不是公式相關錯誤。 這只是表示欄的寬度不足以顯示儲存格內容。 只要將欄拉寬即可,或移至 [常用] > [格式] > [自動調整欄寬]。

[常用] > [格式] > [自動調整欄寬] 的影像

針對您所看到的井字號錯誤,請參閱下列對應的主題:

每次您開啟試算表時,若其中包含參照其他試算表中的值的公式,將會提示您更新參照或保留其現狀。

Excel 中的 [不完整的參考] 對話方塊

Excel 會顯示以上對話方塊,確定目前試算表中的公式一律指向最新更新的值,以免參照值已變更。 您可以選擇更新參照,或者如果不想更新則請跳過。 即使您選擇不更新參照,您還是可以在需要時手動更新試算表中的連結。

您可以隨時停用對話方塊,避免在開機時顯示。 若要這樣做,請移至 [檔案] > [選項] > [進階] > [一般],然後清除 [要求更新自動連結]

[自動更新連結] 選項的影像

如果這是您第一次處理公式裡的中斷連結、需要解決中斷連結的進修課程,或您不知道是否要更新參照,請參閱控制更新外部參照 (連結) 的時間

如果公式未顯示值,請按照下列步驟進行:

  • 請確定已將 Excel 設定為在試算表中顯示公式。 若要這樣做,請選取 [公式] 索引標籤,在 [公式稽核] 群組中,選取 [顯示公式]

    您也可以使用鍵盤快速鍵 Ctrl + ` (在 Tab 鍵上方的按鍵)。 當您執行此動作時,欄將會自動變寬以顯示您的公式,但請不用擔心,當您切換回一般檢視時,您的欄將會調整大小。

  • 如果上述步驟仍無法解決問題,有可能是已將儲存格的格式設定為文字。 您可以在儲存格上按一下滑鼠右鍵,然後選取 [設定儲存格格式] > [一般] (或 Ctrl + 1),然後按 F2 > Enter 以變更格式設定。

  • 如果您已將一欄中大範圍的儲存格的格式設定為文字,您可以選取該範圍,套用您選擇的數值格式,然後移至 [資料] > [資料剖析] > [完成]。 這會將格式設定套用到所有選取的儲存格。

    [資料] > [資料剖析] 對話方塊的影像

當公式無法計算時,您必須檢查是否已在 Excel 中啟用自動計算。 若已啟用手動計算,公式將無法計算。 按照下列步驟檢查 [自動計算]

  1. 選取 [檔案] 索引標籤,選取 [選項],然後選取 [公式] 類別。

  2. 在 [計算選項] 區段的 [活頁簿計算] 底下,請確定已選取 [自動] 選項。

    [自動計算] 和 [手動計算] 選項的影像

如需有關計算的詳細資訊,請參閱變更公式的重新計算、反覆運算或精確度

當公式參照其所在的儲存格時,則會發生循環參照。 修正方式是將公式移至其他儲存格,或將公式變更為可避免循環參照的語法。 不過,在某些情況下,您可能需要循環參照,因為循環參照會使函數反覆運算,亦即重複運算直到符合特定的數值條件為止。 在這種情況下,您必須啟用 移除或允許迴圈參照

如需有關循環參照的詳細資訊,請參閱移除或允許循環參照

如果您的項目沒有以等號開頭,就不是一個公式,且將無法進行計算,這是一個很常見的錯誤。

當您輸入類似 SUM(A1:A10) 的內容時,Excel 會顯示文字字串 SUM(A1:A10) 而不是公式結果。 或者,如果您現在輸入 11/2,Excel 會顯示日期,像是 2-Nov 或 11/02/2009,而不是 11 除以 2。

為了避免這種未預期的結果,函數的開頭一定要使用等號。 例如,輸入:=SUM(A1:A10)=11/2

在使用函數的公式中,每一個左括弧皆須有右括弧,函數才能正確運作。 確認所有的括弧都成對出現。 例如,=IF(B5<0),"Not valid",B5*1.05) 這個公式有兩個右括弧,卻只有一個左括弧,因此無法正確運作。 正確的公式如下所示:=IF(B5<0,"Not valid",B5*1.05).

Excel 函數需要引數,必須提供這些值才能讓函數運作。 只有少數幾個函數 (例如 PITODAY) 不需要引數。 檢查開始輸入函數時系統所顯示的公式語法,確認函數包含必要的引數。

例如,UPPER 函數只接受一個文字字串或儲存格參照為其引數:=UPPER("hello") 或 =UPPER(C2)

您會看到函數的引數列於浮動的函數參照工具列中 (在您輸入的公式底下)。

[函數參考] 工具列的螢幕擷取畫面

此外,有些函數 (例如 SUM) 只需要數字引數,而其他函數 (例如 REPLACE) 則至少必須有一個引數使用文字值。 如果您使用錯誤的資料類型,函數可能會傳回未預期的結果,或顯示 #VALUE! 錯誤。

如果您需要快速查詢特定函數的語法,請參閱 Excel 函數 (依類別) 清單。

請勿在公式中輸入格式含有貨幣符號 ($) 或小數分隔符號 (,) 的數字,因為貨幣符號表示絕對參照,而逗號是引數分隔符號。 您必須在公式中輸入 1000,而非 $1,000。

如果您在引數中使用格式化的數字時,會得出預期之外的計算結果,但您也可能會看到 #NUM! 錯誤。 舉個例說,如果您輸入 =ABS(-2,134) 這個公式來尋找 -2134 的絕對值,Excel 便會顯示 #NUM! 錯誤,因為 ABS 函數只接受一個引數,而且它會將 -2 和 134 視為不同的引數。

當您使用未格式化的數字 (常數) 輸入公式之後,就可以使用小數分隔符號和貨幣符號來格式化公式結果。 將常數放入公式中通常不是好的做法,因為如果您之後需要更新,將難以找到它們,而且它們比較容易輸入錯誤。 比較好的做法是,將常數放入儲存格,其中它們是敞開的且容易參考。

如果儲存格的資料類型無法用於計算,公式可能不會傳回預期的結果。 舉個例說,如果您在格式化為文字的儲存格中輸入簡單的公式 =2+3,Excel 就無法計算您輸入的資料。 您只會在儲存格中看到 =2+3。 若要修正此問題,請將儲存格的資料類型從 [文字] 變更為 [通用格式],就像這樣:

  1. 選取儲存格。

  2. 選取 [常用],然後選取箭號以展開 [數字] 或 [數字格式] 群組 (或按 Ctrl + 1)。 然後選取 [一般]

  3. 按 F2 讓儲存格進入編輯模式,然後按 Enter 接受公式。

在儲存格中以 [數值] 資料類型輸入的日期,會顯示為數值日期格式而不是日期。 若要以數字顯示日期,在 [數值格式​​] 庫中選取 [日期] 格式。

在公式中使用 x 做為乘法運算子是很常見的做法,但 Excel 只能在乘法接受星號 (*)。 如果您在公式中使用常數,Excel 會顯示錯誤訊息,並將 x 取代為星號 (*) 以修正公式。

訊息方塊詢問是否要將 x 取代為 * 以進行乘法計算

不過,如果您使用儲存格參照,Excel 會傳回 #NAME? 錯誤。

儲存格參照使用 x 而不是 * 進行乘法計算時出現 #NAME? 錯誤

如果您建立的公式包含文字,請用引號括住該文字。

例如,公式 ="Today is " & TEXT(TODAY(),"dddd, mmmm dd") 結合了文字 "Today is " 以及 TEXTTODAY 函數的結果,並傳回類似 Today is Monday, May 30 的句子。

在公式中,"Today is" 在結束引號前面有空格;這是為了在 "Today is" 和 "Monday, May 30" 兩個字詞之間提供您要的空格。 如果文字沒有用引號括住,公式可能會顯示 #NAME? 錯誤.

您可以在公式中結合 (或巢狀建構) 最多 64 層的函數。

例如,公式 =IF(SQRT(PI())<2,"Less than two!","More than two!") 有 3 層函數;PI 函數包含在 SQRT 函數內,而後者又包含在 IF 函數內。

當您輸入另一個工作表中之值或儲存格的參照,而該工作表的名稱含有非字母字元 (例如空格) 時,請以單引號 (') 括住該名稱。

舉個例說,如果您要在活頁簿中傳回 Quarterly Data 工作表中 D3 儲存格的值,請輸入:='Quarterly Data'!D3。 如果沒有用雙引號括住工作表名稱,公式就會顯示 #NAME? 錯誤.

您也可以選取另一個工作表中的值或儲存格,在公式中參照它們。 隨後 Excel 便會自動以雙引號括住工作表名稱。

當您輸入另一個活頁簿中之值或儲存格的參照時,請以方括號 ([]) 括住活頁簿名稱,後面再接著含該值或儲存格之工作表的名稱。

例如,若要參照 Excel 開啟之 Q2 Operations 活頁簿內 Sales 工作表上的儲存格 A1 到 A8,請輸入:=[Q2 Operations.xlsx]Sales!A1:A8。 如果沒有方括弧,公式會顯示 #REF! 錯誤.

如果未在 Excel 中開啟該活頁簿,請輸入檔案的完整路徑。

例如,=ROWS('C:\My Documents\[Q2 Operations.xlsx]Sales'!A1:A8)

如果完整路徑含有空格字元,請在路徑開頭和工作表名稱之後、驚嘆號之前,以單引號括住該路徑。

取得其他活頁簿路徑的最簡單方式是,開啟其他活頁簿,然後從您的原始活頁簿輸入 =,然後使用 Alt+Tab 以移到其他活頁簿。 選取工作表上您想要的任何儲存格,然後關閉來源活頁簿。 隨著需要使用的語法,您的公式會自動更新為顯示完整檔案路徑和工作表名稱。 您甚至可以複製及貼上路徑,並在任何需要之處使用。

將儲存格除以值為零 (0) 或沒有值的另一個儲存格,就會產生 #DIV/0! 錯誤.

若要避免此錯誤,您可以直接進行處理,並測試分母的存在。 您可以使用: 

=IF(B1,A1/B1,0)

這表示 IF(B1 存在,然後將 A1 除以 B1,相反則傳回 0)。

在刪除任何項目之前,請務必檢查您是否有任何公式參照儲存格、範圍、定義的名稱、工作表或活頁簿中的資料。 接著在移除參照資料之前,可以將這些公式更換成其結果

如果您無法將公式更換成結果,請檢視這些錯誤及可能解決方案的相關資訊:

  • 如果公式參照的儲存格已刪除或已取代為其他資料,而傳回 #REF! 錯誤,請選取含 #REF! 錯誤的儲存格。 在資料編輯列中,選取 #REF! ,然後將其刪除。 然後再次輸入公式的範圍。

  • 如果定義的名稱遺失,而使參照該名稱的公式傳回 #NAME? 錯誤,請定義一個參照所需範圍的新名稱,或者變更公式,使其直接參照該儲存格範圍 (例如 A2:D8)。

  • 如果工作表遺失,而使參照該工作表的公式傳回 #REF! 錯誤,這種錯誤就無法修正,因為已經刪除的工作表是無法復原的。

  • 如果是活頁簿遺失,則參照活頁簿的公式會保持不變,直到您更新公式為止。

    例如,如果公式是 =[Book1.xlsx]Sheet1'!A1,而已經沒有 Book1.xlsx,該活頁簿中所參照的值仍然可以使用。 但是,如果您編輯並儲存參照該活頁簿的公式,則 Excel 會顯示 [更新數值] 對話方塊,並提示您輸入檔案名稱。 選取 [取消],然後將參照該遺失活頁簿的公式取代為公式結果,以確保這項資料不會遺失。

有時當您複製儲存格的內容時,您只想貼上值而不是 資料編輯列 中顯示的基礎公式。

例如,您可能想將公式的結果值複製到另一個工作表上的儲存格。 或者,在將結果值複製到工作表上的另一個儲存格後,您想要刪除公式中使用的值。 這兩種動作都會導致無效的儲存格參照錯誤 (#REF!) 顯示在目的地儲存格,因為包含您在公式中使用值的儲存格已無法參照。

若要避免發生這個錯誤,只要將公式的結果值貼到目的地儲存格,而不要貼上公式即可。

  1. 在工作表中,選取內含您要複製之公式結果值的儲存格。

  2. 在 [常用] 索引標籤上的 [剪貼簿] 群組中,選取 [複製] 按鈕影像

    Excel 功能區影像

    鍵盤快速鍵:按 CTRL+C。

  3. 選取貼上區左上角的儲存格。

    若要將選取範圍移動或複製到不同的工作表或活頁簿,請選取其他工作表索引標籤,或切換到其他活頁簿,然後選取貼上區的左上角儲存格。

  4. 在 [常用] 索引標籤上的 [剪貼簿] 群組中,選取 [貼上] 按鈕影像,然後選取 [貼上值],或在 Windows 中按 Alt > E > S > V > Enter,或在 Mac 中按 Option > Command > V > V > Enter

若要了解複雜或巢狀公式如何計算最終結果,您可以評估這個公式。

  1. 選取您要評估的公式。

  2. 按一下 [公式] > [評估公式]

    [公式] 索引標籤上的 [公式稽核] 群組

  3. 選取 [評估] 來檢查加底線之參照的值。 評估結果會以斜體字顯示。

    [評估公式] 對話方塊

  4. 如果公式中加底線的部分是參照另一個公式,請選取 [逐步執行],在 [評估] 方塊中顯示另一個公式。 若要返回前一個儲存格與公式,請選取 [跳出]

    參照第二次出現在公式中時,或公式參照其他活頁簿中的儲存格時,[逐步執行] 按鈕就無法使用。

  5. 繼續作業,直到公式的每一個部分都評估完畢。

    [評估公式] 工具不一定會告訴您公式為何出錯,但可以協助指出錯誤之處。 對很難找到問題所在的較大公式而言,這會是相當實用的工具。

    • IFCHOOSE 函數的某些部分不會評估,而且 #N/A 錯誤可能會顯示在 [評估] 方塊中。

    • 空白的參照在 [評估] 方塊中會顯示為零值 (0)。

    • 某些函數會每次工作表變更時重新計算。 這些函數,包括 RANDAREASINDEXOFFSETCELLINDIRECTROWSCOLUMNSNOWTODAYRANDBETWEEN,可能會造成 [評估公式] 對話方塊顯示的結果與工作表儲存格中實際結果不同。

需要更多協助嗎?

您可以隨時詢問 Excel 技術社群中的專家,或在社群中取得支援。

如果您是小型企業擁有者,且想深入了解如何設定 Microsoft 365,請造訪小型企業說明與學習

另請參閱

Excel 公式概觀

Excel 說明與學習

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。