XMATCH 函數會搜尋陣列或儲存格範圍中指定的項目,然後傳回該項目的相對位置。
假設我們在儲存格 C3 到 C7 中有一個產品清單,我們希望確定儲存格 E3 中的產品在清單中的位置。 在這裡,我們將使用 XMATCH 來確定項目在清單中的位置。
語法
XMATCH 函數傳回項目在陣列或儲存格範圍中的相對位置。
=MATCH(lookup_value, lookup_array, [match_mode], [search_mode])
引數 |
描述 |
---|---|
lookup_value 必要 |
查閱值 |
lookup_array 必要 |
要搜尋的陣列或範圍 |
[match_mode] 選擇性 |
指定相符類型: 0: 完全相符 (預設值) -1: 完全相符或下一個最小項目 1: 完全相符或下一個最大項目 2: 萬用字元比對,其中 *、?和 ~ 具有特殊意義。 |
[search_mode] 選擇性 |
指定搜尋類型: 1: 從第一個到最後搜尋 (預設值) -1: 從最後到第一個搜尋 (反向搜尋)。 2: 執行二進位搜尋,依賴 lookup_array 以遞增順序排序搜尋。 如果未排序,將會傳回無效結果。 -2: 執行二進位搜尋,依賴 lookup_array 以遞減順序排序搜尋。 如果未排序,將會傳回無效結果。 |
範例
範例 1
在下列範例中,會決定與「Gra」值完全相符或最接近的第一個片語的確切位置。
分子式:XMATCH (E3,C3:C7,1)
範例 2
有資格獲得獎金的銷售人員人數在下列範例中確定。 為了發現列表中最接近的項目或完全匹配的項目,這也使用 1 作為match_mode;不過,由於資料是數值,因此會傳回值計數。 由於在此實例中有四個銷售代表超過了獎金金額,因此函數會產生 4。
公式=XMATCH (F2,C3:C9,1)
範例 3
接下來,我們將使用 INDEX/XMATCH/XMATCH 的混合執行同時垂直和水平查找。 在此範例中,我們想要傳回特定銷售代表和月份的銷售總額。 這與組合 INDEX 和 MATCH 方法相當,但它需要的參數較少。
公式=INDEX (C6:E12,XMATCH (B3,B6:B12) ,XMATCH (C3,C5:E5) )
範例 4
此外,XMATCH 還可用於傳回陣列內的值。 =XMATCH (4,{5,4,3,2,1}) ,則提供 2,因為 4 是陣列的第二個條目。 雖然 =XMATCH (4.5,{5,4,3,2,1},1) 在此完全相符的情況下會產生 1,但 match_mode 引數 (1) 會設定為傳回完全相符或下一個最大項目,即 5。
需要更多協助嗎?
您可以隨時詢問 Excel 技術社群中的專家,或在社群中取得支援。