Excel 中比 Vlookup 更强大的 INDEX 和 MATCH 函数
原文標題:《比 Vlookup 更強大!這個函數組合,用過的人都說香,錯過后悔一個億!》
大家好,我是懂點 Excel 的小蘭~
在 Excel 中,INDEX 和 MATCH 函數是一對萬金油查找函數公式,兩者配合,能夠發揮出巨大的作用!
MATCH 函數負責找位置,然后告訴 INDEX 位置,INDEX 就去把東西抓過來,好比偵探和警察的關系。
我們來看個簡單的例子。
Q:現在需要從左側表格里,找到柚子的銷量并填寫在 E2 單元格,該怎么做?
A:先用 MATCH 函數找到柚子在 A 列中的位置,公式如下:
=MATCH(D2,A1:A30,0)
結果為 13。
這就說明,在 A1:A30 這個區域中,柚子在第 13 個位置。
然后在 MATCH 函數外面,嵌套 INDEX 函數,公式如下:
=INDEX(B1:B30,MATCH(D2,A1:A30,0))
結果為 231。這就是柚子的銷量。
公式意思也很好理解,在 B1:B30 這個區域里,找到第 13 行的數據,也就是 231。
上面這是一個比較簡單的例子,但是也能看出 INDEX+MATCH 這對組合函數在查找數據方面,能夠發揮出的作用。
以下,我還準備了 6 個 INDEX+MATCH 函數的經典用法,助力大家更快掌握這兩個函數。
1、反向查找
反向查找:查找的結果信息在所需查找條件列的前面。
如下圖:根據 B 列的水果名稱,查找 A 列的編號。
公式:
=INDEX(A2:A30,MATCH(E2,B2:B30,0))
公式說明:和前面舉例的正向查找公式區別不大,唯一需要注意的是查找區域的變化。
相比 VLOOKUP 函數還需要借助 IF 函數構造數組來說,INDEX+MATCH 更容易理解,也更好操作。
2、交叉查找
交叉查找引用數據,如下圖,根據「列號」和「行號」,查找結果信息。
公式:
=INDEX(B2:F11,MATCH(I1,A2:A11,0),MATCH(I2,B1:F1,0))
公式說明:
用第一個 MATCH 函數查找「第 2 排」在 A2:A11 中的位置,結果為 2;
用第二個 MATCH 函數查找「第 3 列」在 B2:F2 中的位置,結果為 3;
最后用 INDEX 函數在 B2:F11 區域中查找。
3、一對多查找
如下圖,根據「名稱」,查找一月、二月、三月的「銷售額」。
公式:
=INDEX($B$2:$D$30,MATCH($F3,$A$2:$A$30,0),MATCH(G$2,$B$1:$D$1,0))
公式說明:對比一下前面提到的交叉查詢公式,可以發現,這兩個公式原理其實是一樣的,只是增加了絕對引用和混合引用。
4、多條件查找
比如,根據兩個條件「月份」和「名稱」,查找「銷量」。
公式:
=INDEX($C$2:$C$21,MATCH(E3&F3,$A$2:$A$21&$B$2:$B$22,0))
公式說明:利用 & 符號將查找條件,查找區域組合在一起,再按正向查找的方法進行查找。
5、區間查找
如果查找值處于某一個區間內,就返回對應的目標值。
如下圖,需要根據業績區間來計算員工的獎金數。
公式:
=INDEX(I2:I5,MATCH(E2,{0,41,81,121},1))
公式說明:這個公式需要注意第二和第三參數的應用。如果第三參數是 1 或者省略,MATCH 函數將查找小于或等于第一參數的最大值,并且第二參數中的值必須是升序排序。
6、模糊查找
模糊查找:通過結合使用通配符(「?」問號和「*」星號)來實現查找目標值。
如下圖,需要查找最后一個字符是「瓜」,一共三個字符的水果的銷量是多少。
公式:
=INDEX(C2:C30,MATCH("??"&E2,B2:B30,0))
公式說明:
「?」問號通配符,代表任意單個字符。「*」星號通配符,代表匹配任意多個字符。
這里我們用了兩個「??」問號,就代表任意兩個字符。
PS:問號和星號必須使用英文半角的!
7、寫在最后
最后給大家做個小小的總結~
INDEX 和 MATCH 函數常見使用方法有以下 7 種:
正 / 反向查找
交叉查找
一對多查找
多條件查找
區間查找
模糊查找
INDEX 和 MATCH 函數的作用非常之強大,祝愿大家早日掌握!
本文來自微信公眾號:秋葉 Excel (ID:excel100),作者:小蘭
總結
以上是生活随笔為你收集整理的Excel 中比 Vlookup 更强大的 INDEX 和 MATCH 函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: velocity参数重新赋值_Veloc
- 下一篇: 三面求对称二叉树_字节跳动后端实习面经,