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 方法,但需要較少的引數。
Formula=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 技術社群 中的專家,或在 社群中取得支援。