FIND 函數的作用是傳回某個特定字元或字串在另一個字串中第一次出現的位置(以數字表示)。這個函數會嚴格區分英文字母的大寫與小寫,適合需要精確比對文字的資料處理情境。
Excel FIND 函數語法
=FIND(尋找的字串, 內含字串, [開始位置])| 參數 | 必填 | 說明 |
|---|---|---|
| 尋找的字串 | 是 | 要尋找的目標文字或字元。 |
| 內含字串 | 是 | 包含要尋找目標的完整文字或儲存格參照。 |
| 開始位置 | 選填 | 指定從第幾個字元開始尋找。若省略,預設從第 1 個字元開始。 |
回傳:傳回目標文字在字串中的起始位置數字(整數)。
適用版本:Excel 2007 以上版本、Microsoft 365、網頁版 Excel。
FIND 函數範例
範例 1:基本用法:尋找特定符號的位置
處理產品編號時,需要找出連字號所在的位置。
| 產品編號 | 產品名稱 | 橫線位置 |
|---|---|---|
| A12-345 | 滑鼠 | |
| B-9876 | 鍵盤 |
在 C2 輸入公式:
=FIND("-", A2)結果:4。尋找連字號「-」在儲存格 A2(A12-345)中第一次出現的位置。連字號位於第 4 個字元,因此傳回數字 4。
範例 2:區分大小寫:精確尋找特定字母
在部門代碼中,需要找出特定小寫字母的位置。
| 員工姓名 | 部門代碼 | a的位置 |
|---|---|---|
| 王小明 | HR-a12 | |
| 陳怡君 | IT-A34 |
在 C2 輸入公式:
=FIND("a", B2)結果:4。尋找小寫字母「a」在儲存格 B2 中的位置。FIND 函數會區分大小寫,精確找到小寫 a 位於第 4 個字元。
範例 3:進階用法:指定開始位置尋找第二個符號
訂單編號有多個橫線,需要找出第二個橫線的位置。
| 訂單編號 | 第二個橫線位置 |
|---|---|
| TW-TPE-001 | |
| US-NY-002 |
在 B2 輸入公式:
=FIND("-", A2, FIND("-", A2) + 1)結果:7。利用內層的 FIND 先找出第一個連字號的位置並加 1 作為開始位置,讓外層的 FIND 從該處繼續尋找,進而傳回第二個連字號的位置。
使用 FIND 的技巧與注意事項
- FIND 函數會嚴格區分大小寫。如果不需要區分大小寫,請改用 SEARCH 函數。
- FIND 函數不支援萬用字元(如星號或問號)。若需要使用萬用字元進行模糊搜尋,請使用 SEARCH 函數。
- 單獨使用 FIND 的情況較少,通常會與 LEFT、RIGHT、MID 等字串擷取函數搭配使用,用來動態決定要擷取的字元長度或起始位置。
FIND 常見錯誤與解決方法
| 錯誤 | 原因 | 解決方法 |
|---|---|---|
| #VALUE! | 目標文字不存在於字串中,或是大小寫不符合。 | 確認目標文字是否正確,或改用不分大小寫的 SEARCH 函數;也可搭配 IFERROR 處理找不到的情況。 |
| #VALUE! | 開始位置參數小於或等於 0,或是大於字串的總長度。 | 檢查第三個參數的數值,確保它大於 0 且不超過內含字串的長度。 |
Google 試算表可以用 FIND 嗎?
Google 試算表完全支援 FIND 函數,用法與 Excel 相同,同樣具備區分大小寫且不支援萬用字元的特性。
下載 FIND 範例檔
上面的範例都整理在這個檔案裡,每個範例一個工作表,黃色格子是公式,可以直接改資料看結果變化:FIND 範例.xlsx(範例公式都在試算表軟體實際計算過)。
常見問題
FIND 和 SEARCH 函數有什麼不同?
FIND 會區分大小寫且不支援萬用字元;SEARCH 則不區分大小寫,並且可以使用萬用字元(如星號或問號)進行模糊搜尋。
如果找不到指定的文字,可以不要顯示錯誤代碼嗎?
可以。你可以將 FIND 函數包在 IFERROR 函數裡面,例如 =IFERROR(FIND("A", A1), "無"),這樣在找不到文字時就會顯示自訂的提示。
怎麼用 FIND 找出字串中最後一個特定字元的位置?
FIND 函數本身只能從左到右尋找。要找最後一個字元,通常需要結合 SUBSTITUTE 與 LEN 函數,將最後一個目標字元替換成特殊符號後,再用 FIND 定位。
這篇收錄在「Excel 函數字典」。




