首頁 > 專題 > excel > 主體

Excel函數學習之查找函數INDEX()的使用方法

青灯夜游
發布: 2023-03-13 19:48:00
轉載
10221 人瀏覽過

本篇文章帶大家來了解INDEX函數! INDEX也是尋找家族的一員,由於他強大的座標定位功能,有時候VLOOKUP都是要靠邊站呢!

Excel函數學習之查找函數INDEX()的使用方法

一、認識INDEX函數

#Index函數:在給定的單元格區域中,傳回特定行列交叉處單元格的值或引用。

函數結構:index(單元格區域,行號,列號)

區域,行號,列號,很像透過座標瞄準打靶呀。就像下面動圖這樣,找到列,找到行,點擊就打中了!

Excel函數學習之查找函數INDEX()的使用方法

我們想找到“囡”,可以看到其座標是行4,列3。

Excel函數學習之查找函數INDEX()的使用方法

所以公式:=INDEX(B2:G11,4,3)就能得到「囡」。

Excel函數學習之查找函數INDEX()的使用方法

二、INDEX函數基礎用法

#1.單行、單列中提取數值:只需一個座標值

如果給定的區域是單行或單列,那麼座標就不需要兩個數字了,只需要一個。

譬如我們現在需要在F17中從A17:A21中獲得「李惠」。

輸入公式:=INDEX(A17:A21,2)即可。

Excel函數學習之查找函數INDEX()的使用方法

又譬如我們需要在G17中從A18:D18取得李惠的基本薪資。

輸入公式:= INDEX(A18:D18,4)即可。

Excel函數學習之查找函數INDEX()的使用方法

2.從一個多行多列區域擷取數值:必須行列兩個座標值

這一點就不列舉了。前方找「囡」字就是這樣的。

從上面的例子可以看出,INDEX透過座標傳回數值,像是精確導引的飛彈,指哪打哪(傳回哪)。不過,純粹的人工查座標再輸入座標,太符合「現代化」了。實際操作中,資料往往都是幾十列,幾十行甚至上萬行的都有,這時候我們再根據需要人工去查座標輸入座標,就太不切實際了。所以INDEX需要助手,需要組團才能打天下。

三、INDEX實戰用法

Excel函數學習之查找函數INDEX()的使用方法

#1.與小助手COLUMN與ROW群組:實作半自動尋找取值

(1)與COLUMN組團可以連續返回同行多個資料

譬如我們需要從表中連續取得工號C23的姓名、年齡、入職時間。

Excel函數學習之查找函數INDEX()的使用方法

在資料區A17:E21中,工號C23位於第3行,姓名、年齡、入職時間的列數由左至右分別是2、3 、4。我們可以用COLUMN(B1)來取代2、3、4來實現半自動效果。公式如下:

=INDEX($A17:$E21,3,COLUMN(B1))

然後右拉填滿即可。

Excel函數學習之查找函數INDEX()的使用方法

得到的入職時間是數字,修改格式為短日期即可。

(2)與ROW組團可以連續傳回同列多個資料

譬如下面,我們用公式:=INDEX(A$17:E$21, ROW(A3),2)下拉填入可獲得三個工號的姓名。

Excel函數學習之查找函數INDEX()的使用方法

(3)與COLUMN和ROW同時組團

##譬如我們可以用公式:

=INDEX($A $17:$E$21,ROW(A3),COLUMN(B1))右拉下拉填充獲得工號C23、C08、C10的姓名、年齡、入職時間。

Excel函數學習之查找函數INDEX()的使用方法

透過與COLUMN和ROW組團,實現了半自動效果。只要是連續、有規律的值,都可以用INDEX ROW COLUMN來實現。

譬如我們需要隔行隔列取值,取得工號C15、C23、C10的姓名、入職時間。公式是:

=INDEX($A$17:$E$21,ROW(A1)*2-1,COLUMN(A1)*2)

#然後右拉下拉填充即可。

Excel函數學習之查找函數INDEX()的使用方法

半自動比完全的人工查座標輸入座標簡單多了,但之所以叫半自動那就是還需要人工去尋找資料的規律。如果取值的資料規律複雜或沒有規律,我們就無法半自動了。這個時候,就需要與大助手MATCH組團進行全自動工作。

2.與大助手MATCH群組團:實作全自動尋找值

#(1)INDEX MATCH組團

Excel函數學習之查找函數INDEX()的使用方法

Excel函數學習之查找函數INDEX()的使用方法

##下面的資料查找規律是亂的,我們不用自己去找規律,把一切都交給MATCH就好了。

在C28輸入公式:

#=INDEX($A$17:$E$21,MATCH($B28,$A$17: $A$21,0),MATCH(C$27,$A$16:$E$16,0))

然後右下下拉填入公式即可。

Excel函數學習之查找函數INDEX()的使用方法

用MATCH函數根據條件在固定區域中查詢行、列位置完全取代了手動查找座標或資料規律,實現了全自動。

(2)INDEX MATCH與VLOOKUP MATCH的區別

Excel函數學習之查找函數INDEX()的使用方法#輸入公式:

=VLOOKUP($B28,$ A$17:$E$21,MATCH(C$27,$A$16:$E$16,0),0)

右拉下拉填入即可。 Excel函數學習之查找函數INDEX()的使用方法

從公式長度來說,VLOOKUP MATCH比INDEX MATCH簡潔。那我們為何還需要INDEX MATCH呢?原因就在於INDEX函數只要收到行列座標值就可以查到數據,根本不存在什麼正向查找、反向查找的差異。 VLOOKUP就不行了,預設情況下它只能實現正向查找,也就是在查找區域裡只能是從左往右查找,而不能從右往左查找。 VLOOKUP要實現從右往左的反向查找,就需要藉助IF函數或CHOOSE函數來建構新的查找區域。 譬如我們需要透過姓名查工號,如下:

Excel函數學習之查找函數INDEX()的使用方法

#採用INDEX MATCH組合直接寫公式:

=INDEX(A$17:B $21,MATCH(G17,B$17:B$21,0),1)

,然後下拉即可

如果用VLOOKUP查找,因為是反向查找,就需要用IF函數重新建構查找區域,公式就變成:

=VLOOKUP(G17,IF({1,0},B$17:B$21,A$17: A$21),2,0)

Excel函數學習之查找函數INDEX()的使用方法

所以,比較起來,正向查找的時候,用INDEX MATCH和VLOOKUP MATCH都可以,VLOOKUP MATCH相對更簡潔;反向查找的時候,則用INDEX MATCH最簡潔,尤其是反向查找區域有三列、四列資料的時候,INDEX MATCH是最佳選擇。

好了,回答了函數課堂2中的問題後,我們繼續看INDEX的實用組團。

3.與特別來賓SMALL和IF加上大小助手共同組團:實現一對多查找

組團後的公式格式是=INDEX (查找區域,SMALL(IF(),ROW()),MATCH())

譬如下方的動圖所顯示的:

公式很長:

###=INDEX($A$2:$D$21,SMALL(IF($C$2:$C$21=$F$2,ROW($1:$20), 99),ROW(A1)),MATCH(F$3,$A$1:$D$1,0))#########套上防錯的IFERROR函數,就更長了:### ######=IFERROR(INDEX($A$2:$D$21,SMALL(IF($C$2:$C$21=$F$2,ROW($1:$20),99),ROW(A1)) ,MATCH(F$3,$A$1:$D$1,0)),"")##########這樣的組合公式,我們又常稱它為萬金油公式,主要用於一對多的查找。 ######Ok,INDEX的實戰用法我們就介紹這麼多。 INDEX函數具有利用座標精確取值的優勢,但本身缺乏根據條件自動找出座標的功能,是個瘸子,所以實戰中它需要助手協助來找出座標。它是函數中的精確導引導彈,它是瘸子,一個強大的瘸子! ######相關學習推薦:###excel教學######

以上是Excel函數學習之查找函數INDEX()的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:itblw.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板