Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 for Mac Excel 2016

本主題針對 FIND/FINDB 和 SEARCH/SEARCHB 函數中發生 #VALUE! 錯誤的常見案例提供相關協助。

FIND 和 SEARCH 函數的幾點注意事項

  • FINDSEARCH 函數非常類似。 它們的運作方式相同-找出另一個文字字串中的字元或文字字串。 這兩個函數之間的差異在於 FIND 會區分大小寫,且 SEARCH 不區分大小寫。 因此,如果您不想比對文字字串中的大小寫,請使用 SEARCH。

  • 如果您想要根據指定的字元數傳回字串的函數,請搭配 FIND 使用 MID 函數。 如需使用 MID 和 FIND 組合的相關資訊和範例,請參閱 FIND 說明主題。

  • 這些函數採用相同的語法:find_text, within_text, [start_num])。 這個語法的意思是:您想要尋找什麼?您想在哪裡搜尋?您想從哪個位置開始搜尋?

問題:在 within_test 字串中找不到 find_text 引數中的值

如果函數找不到指定文字字串中的文字,就會傳回 #VALUE! 錯誤。

例如,假設函數如下所示:

  • =FIND("gloves","Gloves (Youth)",1)

這會傳回 #VALUE! 錯誤,因為在字串中找不到相符的「gloves」,只找得到「Gloves」。 請記得,FIND 會區分大小寫,因此請確認 find_text 中的值與 within_text 引數中的字串大小寫完全一致。

不過,此 SEARCH 函數會傳回 1 這個值,因為它不會區分大小寫:

  • =SEARCH("gloves","Gloves (Youth)",1)

解決方案: 視需要更正語法。

問題:start_num 引數設為零 (0)

start_num 引數為選擇性的引數,如果您忽略它,預設的值會是 1。 不過,如果語法中出現這個引數,且其值設為 0,則您就會收到 #VALUE! 錯誤。

解決方案: 若不需要 start_num 自變數,請移除自變數,或將其設定為正確的值。

問題:start_num 引數大於 within_text 引數

例如,假設函數為:

  • =FIND(“s”,”Functions and formulas”,25)

此函數會「Functions and for mulas」字串 (within_text) 的第 25 個字元 (start_num) 開始尋找「s」,但由於該字串只有 22 個字元,因此會傳回 #VALUE! 錯誤。

提示: 若要尋找文字字串中的字元總數,請使用 LEN function

解決方案: 視需要更正起始號碼。

需要更多協助嗎?

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

另請參閱

修正 #VALUE! 錯誤

FIND/FINDB 函數

SEARCH/SEARCHB 函數

Excel 公式概觀

如何避免公式出錯

偵測公式中的錯誤

所有 Excel 函數 (按字母排序)

所有 Excel 函數 (依類別)

Need more help?

Want more options?

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

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