快速查詢,INDEX和MATCH函數必須會!

關於數據查詢,大家想到的可能想到用VLOOKUP函數或HLOOKUP函數查找功能實現,但是通過INDEX與MATCH這兩個函數的組合應用,不僅可以實現VLOOKUP函數和HLOOKUP函數的功能,並且可以實現任意方向的查詢以及多條件查詢等。今天通過一個案例徹底掌握INDEX與MATCH這兩個函數的應用。

一,INDEX與MATCH函數的語法

INDEX(array,row_num,[column_num]),指返回表或區域中的值或對值的引用

三個參數分別為數據表區域,行數,列數


MATCH(lookup_value,lookup_array,[match_type]),指返回指定數值在指定數組區域中的位置

三個參數分別為查找的值、查找單元格區域、查找方式

下圖為某公司導出的數據源:


快速查詢,INDEX和MATCH函數必須會!

一,單個數據查找

根據表一要求:通過A列的客戶ID在數據源中查找公司名稱(向右查找)


快速查詢,INDEX和MATCH函數必須會!

首先:明白INDEX函數和MATCH函數分別的應用

例:查找A2單元格在數據源A列的位置

在C20單元格輸入公式=MATCH(A2,數據源!A:A,0),結果為15,表示A2單元格在數據源A列的位置為第15行。

例:查找B1單元格在數據源A1:K1中的位置

在C21單元格輸入公司=MATCH(B1,數據源!A1:K1,0),結果為2,表示B1單元格在數據源A1:K1中的位置為第2列。

例:在數據源B列中找15行的數據

在C22單元格輸入公式=INDEX(數據源!B:B,15),結果為“浩天旅行社”,表示在數據源B列中找15行的數據結果為“浩天旅行社”

其次:在明白了INDEX函數和MATCH函數後,通過組合即可實現數據查詢

方法一,通過VLOOKUP實現

在B2單元格輸入公式=VLOOKUP(A2,數據源!A:B,2,0),回車向下拖動即可。

方法二,通過INDEX與MATCH這兩個函數組合實現

在C2單元格輸入公式=INDEX(數據源!B:B,MATCH(A2,數據源!A:A,0)),回車向下拖動即可。

根據表二要求:通過A列的公司名稱在數據源中查找客戶ID(向左查找)


快速查詢,INDEX和MATCH函數必須會!

方法一,通過VLOOKUP實現

在B2單元格輸入公式=VLOOKUP(A2,IF({1,0},數據源!B:B,數據源!A:A),2,0),回車向下拖動即可。

方法二,通過INDEX與MATCH這兩個函數組合實現

在C2單元格輸入公式=INDEX(數據源!A:A,MATCH(A2,數據源!B:B,0)),回車後向下拖動即可。

二,快速多個數據同時查找

情況一,返回數據的表頭和數據源所在的表頭順序一致

根據表三要求:快速查找數據


快速查詢,INDEX和MATCH函數必須會!

常規思維:我們在每一個列都使用查找引用函數 ,

在E4單元格輸入公式=VLOOKUP(D4,數據源!A:K,2,0);

在F4單元格輸入公式 =VLOOKUP(D4,數據源!A:K,3,0);

在G4單元格輸入公式=VLOOKUP(D4,數據源!A:K,4,0);

在H4單元格輸入公式=VLOOKUP(D4,數據源!A:K,5,0)…

分析:觀察發現,返回數據的表頭和數據源對應數據的表頭所在的列的順序一致,列號不一致,都差3

通過VLOOKUP+COLUMN快速解法:

COLUMN函數,COLUMN(reference) Reference為需要得到其列表的單元格或單元格區域 如果省略reference,則假定為是對函數COLUMN所在單元格的引用。簡單講就是返回單元格的列號。

在E4單元格輸入公式VLOOKUP($D4,數據源!$A:$K,COLUMN()-3,0),然後向右向下拖動即可得到結果,"COLUMN()-3"可以理解為一個變量,根據實際情況變動。

情況二,返回數據的表頭和數據源所在的表頭順序不一致

根據表四要求:快速查找數據


快速查詢,INDEX和MATCH函數必須會!

觀察發現,返回數據的表頭和數據源對應數據的表頭所在的列的順序不一致,沒規律,但通過MATCH函數我們可以查找表頭在數據源中的位置。

方法:通過INDEX與MATCH這兩個函數組合快速實現,在E4單元格輸入公式=INDEX(數據源!$A:$K,MATCH($D4,數據源!$A$1:$A$92,0),MATCH(E$3,數據源!$A$1:$K$1,0)),然後向右向下拖動即可。


三,通過Index+Match實現圖片的引用

根據表五要求:實現引用圖片


快速查詢,INDEX和MATCH函數必須會!

效果:G5單元格設置了數據有效性,當我們選擇不同的姓名,可以看到員工的照片可以跟著變動。

方法:先在G8單元格設置公式:=INDEX($D$5:$D$8,MATCH($G$5,$A$5:$A$8,0)),注意單元格的引用,複製公式後刪除;然後,選擇表外任意單元格,在工具欄中選擇 公式,然後定義名稱 照片,引用位置處複製我們剛才的函數公式;然後在G8處輸入=照片 就可以實現引用。EXCEL10版本要通過照相機功能實現喲。

INDEX與MATCH這兩個函數的應用你學會了嗎?


分享到:


相關文章: