跳轉到

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