之前跟大家分享過Vlookup函式的升級版Xlookup的使用方法,不少粉絲都覺得Xlookup已經成為了Excel中最強大的查詢方式了。可別急著下結論,今天我們來看下Index+match函式的升級版Index+Xmatch的使用方法,在這裡主要升級了match,讓這個函式組合變得更加靈活好用。廢話不多說,讓我們直接開始吧
XMATCH的使用方法
Xmatch:返回項在陣列或單元格區域的相對位置
語法:=XMATCH (lookup_value、lookup_array、[match_mode]、[search_mode])
第一引數,lookup_value:查詢值
第二引數,lookup_array:查詢的資料區域
第二引數,match_mode,匹配型別,它是一個可選引數,一共有四個匹配型別
0 表示: 精確匹配(預設,省略第三引數則預設設定為0)
-1 表示: 完全匹配或下一個最小項
1表示: 完全匹配或下一個最大項
2 表示:萬用字元匹配
第四引數,search_mode,搜尋型別,它也是一個可選引數,有四個搜尋型別
1 表示: 正序搜尋, (預設,省略第三引數則預設設定為1)
-1 表示: 搜尋倒序搜尋 。
2 表示:依賴於lookup_array按升序排序的二進位制搜尋
-2 表示:依賴於 lookup_array 按降序排序的二進位制搜尋
我們透過一個例子來實際地看下這個函式的效果。比如在這裡我們查詢下張飛在姓名這一列中的位置,只需要將公式設定為:=XMATCH(F3,A2:A9,0)即可,它的結果為3,就是說在A2:A9這個資料區域中,張飛在第3個位置
以上就是Xmatch函式的作用以及引數,它的作用其實就是用來查詢資料位置的,下面我們來看下它與index函式搭配都能實現哪些操作吧
一、常規查詢
如下圖所示,我們想要查詢下武則天的數學成績,只需要將公式設定為
=INDEX(D1:D9,XMATCH(G4,A1:A9,0))即可找到正確的結果
二、反向查詢
所謂的反向查詢,就是找到查詢值左側的資料,比如在這裡我們想要根據學號來查詢姓名,這就是一個典型的反向查詢,只需要將公式設定為
=INDEX(A1:A9,XMATCH(G4,B1:B9,0))
它與普通查詢幾乎是一模一樣的,只不過僅僅更改了第一引數的位置罷了
三、多條件查詢
多條件查詢一般用在有重複的資料中,我們需要新增一個查詢條件,來找到準確的結果,比如在這裡有2個魯班,現在我們想要查詢的是2班魯班的成績,只需要將公式設定為
=INDEX(E1:E9,XMATCH(G3&H3,A1:A9&B1:B9,0))
在這裡我們只需要使用連線符號將xmatch函式對應的第一與第二引數連線在一起即可
四、查詢多列資料
利用index+xmatch函式,我們可以實現一次查詢多行多列的效果,即使查詢的欄位不是連續的,它也可以實現自動匹配,在這裡我們只需要將公式設定為
=INDEX($A$1:$G$10,XMATCH($I2,$A$1:$A$10,0),XMATCH(J$1,$A$1:$G$1,0))
第一個xmatch函式用於確定列標號,第二個match用於確定行標號,行列標號交叉處就是函式返回的結果
五、模糊查詢
模糊查詢就是我們可以透過輸入關鍵字來查詢資料,只不過需要配合萬用字元使用,常用的萬用字元有2個
?:表示任意單個字元
*:表示任意多個字元
比如在這裡我們想要查詢下豬八戒的數學成績,我們將查詢值設定為豬?戒,然後將公式設定為:=INDEX(D1:D9,XMATCH(G2,A1:A9,2))點選回車即可找到正確的結果,在這裡關鍵是Xmatch函式的第三引數,我們將匹配型別設定為了萬用字元匹配
六、查詢最後一次出現的資料
想要利用這個組合查詢最後一次出現的資料,首先需要對日期這一列資料進行升序排序,隨後將公式設定為
=INDEX(B1:B25,XMATCH(D2,A1:A25,0,-1))
在這路主要是利用Xmtach函式的第四引數,更改它的搜尋方式,讓其從後往前搜尋
七、等級判定
如下圖,我們需要根據成績進行等級的判定,利用index+xmatch也可以搞定,只不過我們需要取每個區間的最小值來構建一個等級對照表,如下圖橙色區域,隨後根據等級對照表來查詢資料
公式為:=INDEX($F$8:$F$11,XMATCH(B2,$E$8:$E$11,-1))
主要是利用的xmatch的第三引數,將其設定為-1,如果找不到精確的結果,就會返回小於查詢值的最大值。
以上就是我們分享的關index+xmatch函式的使用方法,你覺得它是不是Excel中最強大的資料查詢方式呢?
有什麼疑問,可以留言討論,覺得有用,麻煩給個一鍵三連,關注我,持續分享更多Excel技巧
(此處已新增圈子卡片,請到今日頭條客戶端檢視)