XMATCH¶
類別: MS Excel 相容函數 · 原生導入: Excel 2021
傳回搜尋值在陣列中的位置。
語法¶
=XMATCH(搜尋值, 搜尋陣列, [比對模式], [搜尋模式])
引數¶
| 引數 | 必要 | 說明 |
|---|---|---|
| 搜尋值 | 必要 | 要搜尋的值 |
| 搜尋陣列 | 必要 | 搜尋陣列 |
| 比對模式 | 選用 | 0 精確(預設),-1 較小,1 較大,3 正則 |
| 搜尋模式 | 選用 | 1 從前(預設),-1 從後 |
傳回¶
以數字純量傳回找到的位置(從 1 開始)。若陣列為空或沒有相符項目則傳回 #N/A;內部錯誤則傳回 #VALUE!。
範例¶
| 公式 | 結果 | 說明 |
|---|---|---|
=XMATCH(3,{1;2;3;4}) |
3 | 完全相符的位置 |
=XMATCH(2.5,{1;2;3},1) |
3 | 大於或等於之值的位置 |
=XMATCH(5,{1;2;3}) |
#N/A | 不相符時傳回 #N/A |
=XMATCH("rr[yx]$",{"apple";"Banana";"cherry"},3) |
3 | 正則比對(match_mode 3) |
=XMATCH("e",{"apple";"Banana";"cherry"},3,-1) |
3 | 正則 + 從後往前搜尋 |
備註¶
- 不支援 match_mode 2(萬用字元)與 search_mode 2/-2(二進位搜尋)。
- match_mode 3(正則)會將搜尋值解讀為正則模式,傳回文字儲存格中包含該模式相符之第一個項目的位置(部分比對,REGEXTEST 方式)— 模式編號與 Microsoft 365 原生 XMATCH 的 2024 年新功能相同。預設區分大小寫;在模式前加上 (?i) 可忽略大小寫(與原生用法相同)。非文字儲存格不會相符;搜尋值不是文字、正則無效、或與 search_mode 2/-2(二進位搜尋)組合時傳回 #VALUE!。
- 正規表示式語法為 std::wregex 的 ECMAScript(可能與原生 365 的 PCRE2 略有差異)。
- 相關函數:XLOOKUP。
- 支援: Excel 2010+。在沒有原生函數的舊版 Excel 中以
XMATCH原名註冊(可直接替換),在已內建原生函數的新版 Excel 中則註冊為EG.XMATCH。