數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

INDEX和MATCH珠聯璧合

Hello,大家好。今天和大家分享一個數據查詢的最佳拍檔-----INDEX函數和MATCH函數。這兩個組合函數,能夠完勝VLOOKUP函數和HLOOKUP函數的全部查找功能,並且可以實現任意方向的查詢以及多條件查詢等。

首先來說說INDEX函數的作用:

INDEX函數用於在一個區域中,根據指定的行、列號來返回內容,該函數通常用兩個或三個參數;

三個參數其語法是:INDEX(單元格區域,指定的行數,指定的列數)

例如以下公式,用於返回A1:D4單元格區域第3行和第3列交叉處的單元格,即C3單元格=INDEX(A1:D4,3,3)

數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

兩個參數的寫法是:INDEX(一行或一列數據,指定返回第幾個元素)

例如公式=INDEX(A1:D1,2),用於返回A1:D1單元格區域第2個元素,即B1單元格的內容

數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

其次來說說INDEX函數的作用:

MATCH函數用於在一行或一列的查詢區域中搜索指定的內容,然後返回該內容在查詢區域中的相對位置。

MATCH函數有三個參數,第一個參數是查找對象,第二個是指定查詢的區域,第三參數用於指定匹配的方式,通常用0,表示精確匹配。

例如以下公式,就是返回D3單元格的內容在A2:10中所在的位置,結果為8.

=MATCH(D3,A2:A10,0)

數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

注意這裡的8,是指查找內容在查詢區域中所處的位置,不是說工作表的第幾行。另外,如果在數據區域內包含多個查找值,MATCH函數只返回查找值第一次出現的位置。

通過上面對INDEX函數和MATCH函數的介紹,相信有的小夥伴可能已經發現了,INDEX是根據位置返回內容,MATCH是返回內容在一行或一列中的位置。接下來,我們就來說說這兩個高手的常見配合招式:

INDEX聯手MATCH,實現正向查詢

如下圖所示,要根據D3單元格中的姓名,在A-B列查詢對應的職務。E3單元格公式為:

=INDEX(B:B,MATCH(D3,A:A,0))

解釋說明:先使用MATCH函數,查找D3單元格的""在A列中所在的位置,得到結果為8,。然後使用INDEX函數,在B列中但會第8個元素的內容,結果就是"小昭"對應的職務。

數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

INDEX聯手MATCH,實現逆向查詢

如下圖所示,要根據E3單元格中的職務,在A—B列查詢對應的姓名。F3單元格公式為:=INDEX(A:A,MATCH(E3,B:B,0))

數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

解釋說明:先使用MATCH函數,查找E3單元格的"秘書"在B列中所處的位置,得到結果為"10"。然後使用INDEX函數,在A列中返回第10個元素的內容,結果就是"秘書"對應的姓名。

INDEX聯手MATCH,實現多條件查詢

除了常規的單條件查找招式外,這兩位高手還可以完成多條件的查詢。

如下圖所示,需要根據E列和F列的職務和年齡信息,在A-C列單元格區域中,查找職務為"秘書",年齡為"20"歲對應的姓名。G3單元格公式為:

= INDEX(A:A,MATCH(E3&F3,B:B&C:C,0))

數據查詢的最佳拍檔,INDEX和MATCH函數珠聯璧合

注意這裡是一個數組公式,輸入完成後需要將光標放到編輯框中,按住Shift+ctrl不放,再按回車完成。


解釋說明:這個公式先使用連接符&將E3和F3的職務年齡合併成一個新的條件。 再使用連接符&將B列和C列的信息合併成一個新的查詢區域。然後使用MATCH函數,查詢出職務&年齡在查詢區域中所在的位置。最後用INDEX函數,得到A列第"5"個元素的內容,最終完成兩個條件的數據查詢。


好了,今天就跟大家分享到這裡了,祝各位小夥伴學習快樂。


分享到:


相關文章: