1. 程式人生 > >Excel中如何活用Index函式與Match函式

Excel中如何活用Index函式與Match函式

Index函式與Match函式聯合查詢

在Excel中MATCH函式可以返回指定內容所在的位置,而INDEX又可以根據指定位置查詢到位置所對應的資料,所以在INDEX函式中巢狀MATCH函式,我們能夠很容易的返回指定位置相關聯的資料。

函式介紹

Index函式

功能: Index函式用於返回指定位置中的內容。
引數說明: INDEX(array,row-num,column-num)

array:要返回值的單元格區域或陣列

row-num:返回值所在的行號

column-num:返回值所在的列號

Match函式

功能:Match函式是用於返回指定內容的所在位置。

引數說明: MATCH(lookup-value,lookup-array,match-type)

lookup-value:需要在資料表(lookup_array)中查詢的值

lookup-array:表示可能包含所要查詢的數值的連續單元格區域,應為陣列或陣列引用。

match-type:表示查詢的指定方式,預設為0,精確查詢。

函式應用

Index函式應用

如下圖,是我們的資料區域,我們想要查詢2月份的差旅費,即我們標黃的資料423。
這裡寫圖片描述
那麼我們先來看,最終想要查詢的結果,它處在資料區域的位置(即所在行和列)。可以看出,423處於資料區域的第4行(即“差旅費”所在的行),第3列(即“2月”所在的列)。我們在D9單元格輸入公式:
=INDEX(A1:G6,4,3)

第1個引數是要返回值的單元格區域或資料,A1:G6;
第2個引數是要返回值所在的行號,4;
第3個引數是返回值所在的列號,3;

最終得到423這個結果。但是,我們如何知道想要查詢結果所在的位置呢,這裡我們就來引入MATCH函式的用法~

Match函式應用

上面我們已經根據INDEX函式返回指定位置的內容了,現在,我們想要知道位置如何確定。以上面的例子為例,我們仍然是想要查詢2月份的差旅費,但是這裡的INDEX函式指定的位置(第4行,第3列)是我們手動指定的。我們能夠如何根據MATCH函式自動確定返回值所在的位置呢~
我們知道,返回結果423所處的位置取決於“差旅費”所在的行和“2月”所在的列。也就是,只要我們能夠確定“差旅費”所在的行和“2月”所在的列,我們就能夠很容易得到我們想要的結果。
這裡寫圖片描述


我們在F10單元格輸入公式:
=MATCH(C9,A1:A6,0)

第1個引數是需要在資料表中查詢的值,C9,即“差旅費”;
第2個引數是可能包含所要查詢的資料的連續單元格區域,即A1:A6;
第3個引數是查詢的指定方式,預設為0,精確查詢;

最終我們得到4,即“差旅費”在資料區域所在的行。我們用同樣的方式來查詢“2月”在資料區域所處的位置,輸入
=MATCH(B9,A1:G1,0)
得到3,即“2月”在資料區域所在的列。

Index函式與Match函式聯合查詢

上面我們已經掌握了Index函式和Match函式各自的用法了~那麼這裡我們就很容易了。我們已經知道可以通過Match函式可以返回指定內容所在的位置,而Index函式又可以根據指定位置返回我們想要的結果。
這裡寫圖片描述
我們將上面INDEX函式中的第2個引數和第3個引數,分別用MATCH函式替換掉,最後的公式為:
=INDEX(A1:G6,MATCH(C9,A1:A6,0),MATCH(B9,A1:G1,0))
這時候,我們就算更改B9單元格的月份,或者C9單元格的費用型別,我們的結果也會隨之自動更新。這就是INDEX函式和MATCH函式的聯合查詢。