XMATCH 函數是 Microsoft Excel 提供的一個查找函數,與 XLOOKUP 類似,能夠幫助你在範圍或數組中查找某個值,並返回該值的相對位置(索引)。這個函數非常適合用於查找特定元素在數據中的位置,尤其在需要處理複雜的查找需求時,非常有用。
? XMATCH 函數語法
XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
參數解釋:
- lookup_value:必須參數,表示你要查找的值。
- lookup_array:必須參數,表示要查找的範圍或數組。
- [match_mode](可選):指定匹配模式:
0(精確匹配,默認值)1(查找最接近的較小值)-1(查找最接近的較大值)
- [search_mode](可選):指定查找模式:
1(從前往後查找,默認值)-1(從後往前查找)
? 作用:在數組或範圍中查找指定值並返回該值的相對位置。XMATCH 主要用來取代 MATCH 函數,具有更多的靈活性和功能。
? XMATCH 函數應用範例
1️⃣ 基本的精確查找
假設你有一列學生姓名,並希望查找 “Alice” 在這列中的位置:
=XMATCH("Alice", A2:A6)
? 解釋:查找 “Alice” 在範圍 A2:A6 中的位置,並返回其相對索引(位置)。
結果:如果 “Alice” 是第 2 個元素,則返回 2。
2️⃣ 查找最接近的數值(近似查找)
假設你有一列數字,並希望查找最接近 15 的數字在數列中的位置:
=XMATCH(15, A2:A6, 1)
? 解釋:查找 15 在範圍 A2:A6 中最接近的較小值,並返回其相對位置。
結果:如果 A2:A6 中最接近且小於或等於 15 的數字是 12,且它位於第 3 行,則結果會返回 3。
3️⃣ 查找最接近的較大數值
假設你有一列數字,並希望查找最接近 10 的較大數字在數列中的位置:
=XMATCH(10, A2:A6, -1)
? 解釋:查找 10 在範圍 A2:A6 中最接近的較大值,並返回其相對位置。
結果:如果 A2:A6 中最接近且大於或等於 10 的數字是 11,且它位於第 2 行,則結果會返回 2。
4️⃣ 查找範圍中的數值(從後往前查找)
=XMATCH("Bob", A2:A6, 0, -1)
? 解釋:查找 “Bob” 在範圍 A2:A6 中的位置,並從範圍的最後一項開始查找。
結果:如果 “Bob” 在範圍的倒數第二行(例如第 5 行),結果將返回 5。
5️⃣ 查找沒有精確匹配時返回的位置
如果沒有精確匹配的數據,XMATCH 可以根據你指定的匹配模式查找最接近的值:
=XMATCH(25, A2:A6, 1)
? 解釋:查找數字 25 在範圍 A2:A6 中最接近的較小值,並返回其位置。
結果:如果 A2:A6 中最接近且小於或等於 25 的數字是 20,則返回該數字在範圍中的位置。
? XMATCH 函數的實際應用情景
1️⃣ 查找員工的排名
假設你有一個員工薪水表,並希望找出某個員工薪水的排名:
=XMATCH(5500, B2:B10, 1)
? 效果:查找 5500 在 B2:B10 範圍中的位置,並返回該數字的排名(以最接近的較小值為標準)。
2️⃣ 查找產品位置
假設你有一個產品清單,並想知道某個特定產品的庫存位置:
=XMATCH("Laptop", A2:A10)
? 效果:查找 A2:A10 範圍中的產品名稱 “Laptop”,並返回它的相對位置。
3️⃣ 查找學生分數的名次
假設你有一個學生分數表格,並希望查找某個學生的名次:
=XMATCH(85, C2:C10, 1)
? 效果:查找 85 在 C2:C10 範圍中的位置,並返回該學生分數在班級中的排名(以最接近的較小值為基準)。
? 總結
✅ XMATCH 是一個非常強大的查找函數,能夠返回指定值在數組中的相對位置,並且具有更多的靈活性,例如支持近似查找和反向查找。
✅ 它可用於取代傳統的 MATCH 函數,並提供更多匹配選項,讓查找過程更加精確。
✅ XMATCH 函數可廣泛應用於各種情境,特別是當你需要知道某個元素在數據中的位置時。