常用函數的第五篇來了!這節我們來學習下index與match函數,這個組合相信很多人都用過,很多喜歡将index match與Vlookup進行比較,我覺得他們各有優點,但是如果非要選擇一個話,我會選擇 index match因為它更加靈活,功能也更加強大!下面我們就來學習下吧
一、Index函數index函數:根據數據區域中的行列号返回區域中對應的值
語法:=INDEX(array, row_num, [column_num])
第一參數:數據區域
第二參數:行标号的位置
第三參數:列标号的位置
如果第一參數僅僅隻有一行或者一列,我們就能省略對應的行列标号。
如需下圖,我們想要找到武則天的數學成績
公式:=INDEX(A1:D9,5,3)
在A1:D9這個數據區域中,第五行(武則天)與第三列(數學)它們的交叉處,就是我們需要的結果
語法:=MATCH(lookup_value, lookup_array, [match_type])
第一參數:查找值
第二參數:查找的數據區域
第三參數:匹配類型,在這裡我們将其設置為0即可,表示精确匹配
如下圖,我們想要查找【武則天】這姓名在第一列的位置
公式:=MATCH(F3,A1:A9,0)
結果為5,就表示在A1:A9這一列數據中,【武則天】是在第五個位置的
match函數是查找數據的位置,而index函數它是根據位置來返回對應的數據。所以我們隻需要将match函數嵌套在match函數中就能達到數據查詢的效果。下面來看下它都能解決哪些問題吧
三、常規查詢如下圖,我們想要查找張飛的數學成績
公式:=INDEX(D1:D9,MATCH(G3,A1:A9,0))
第一參數:D1:D9,需要返回的結果列
第二參數:MATCH(G3,A1:A9,0),查找張飛在A列的位置
第三參數:省略,因為在這裡僅僅隻有1列數據
這個案例是index match最常見的使用方法,将第一參數設置為需要返回的結果列,就可以将第三參數省略掉,我們僅僅隻需要使用mtach函數來确定數據的位置即可
Index match的反向查找與常規查詢是一樣的操作,它既可以查找右側數據,也能查找左側數據,非常靈活
如下圖,我們想要查找3212這個學号對應的姓名
公式:=INDEX(A1:A9,MATCH(G3,B1:B9,0))
Index match在進行數據查詢的時候,如果遇到重複值也是僅僅隻能返回第一個找到結果,這個時候我們就需要再增加一個條件讓結果變得唯一。
如下圖,我們想要找下【2班韓信】的英語成績
公式:=INDEX(E2:E10,MATCH(H4&I4,B2:B10&C2:C10,0))
這個公式本質上還是一個index match的常規查詢的格式,關鍵是match函數的第一跟第二參數
第一參數:H4&I4,将班級跟姓名鍊接在了一起
第二參數:B2:B10&C2:C10,将班級列跟姓名列鍊接在了一起
連接後,我們的查找值就變為了【2班韓信】這個值是唯一的,是可以找到對應的結果的
index match也是可以實現一次查找多行多列數據的,我們隻需要在第一個單元格中輸入公式,然後向下向右填充即可
公式:=INDEX($B$2:$H$11,MATCH($J3,$B$2:$B$11,0),MATCH(K$2,$B$2:$H$2,0))
第一參數:$B$2:$H$11,需要查找的數據區域
第二參數:MATCH($J3,$B$2:$B$11,0),确定列标号
第三參數:MATCH(K$2,$B$2:$H$2,0),确定行标号
現在第一參數是多列數據,所以我們隻需要使用2次match函數找到對應的行列号即可
以上就是這一節的全部内容,其實關于index match還有很多高階的操作,隻不過太難了,不建議大家學,現在新函數層數不窮,很多高階的函數操作都已經被淘汰掉了,我的宗旨就是:什麼簡單學什麼,怎麼方便怎麼來!
我是Excel從零到一,關注我,持續分享更多Excel技巧
以上内容在我的專欄中都有講到
如果你想要學習Excel,提高工作效率
這裡↓↓↓
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!