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 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?

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

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