今天我們來聊聊另外一個家族-去找家族!說起查找家族,相信大家首先想到的就是VLOOKUP函數。這位大哥打拼沙場多年,早已名揚萬裡!相信接觸過Excel的小夥伴多少略有耳聞。然而今天我們要說的是它身邊得力小弟──MATCH函數!
這個小弟呀,雖然單拎出來能力不咋的,但是跟著大哥組隊,那效果可是槓槓的!
我們先來認識認識他吧
1.精確找出
舉個栗子我們想知道「張三」在「姓名」這列區域排第幾位。公式:
#=MATCH(B3,B$2:B$8,0)<strong></strong>
公式解析:
#找啥:找“張三”,所以是B3單元格在哪裡找:在姓名欄位B2:B8中找。為了防止向下填入公式姓名列區域變動,需要用$將它固定住,即B$2:B$8。 查找類型:0表示精確查找。精確查找不需要排序。2.升序查找
升序查找就是要找出小於等於查找值的最大值然後回傳其所在位置。要求資料必須升序排列。 同樣舉個栗子我們想知道不大於60的有幾個。 首先將成績依升序排列。 然後在D3中輸入公式:=MATCH(60,B20:B40,1)
#確定後就得到了人數8人。很顯然升序排列後,傳回的是小於等於60的最後一個數值的位置數;也可以理解為統計了凡是不大於60的包括所有等於60的數值的個數。
3.降序尋找
降序找出就是找出大於等於尋找值的最小值然後回傳其所在位置。要求必須降序排列。 同樣舉個栗子我們想知道不小於60的有幾個。接著上面的,首先降序排列資料。 然後在E3中輸入公式:=MATCH(60,B20:B40,-1)
(1)降序後,升序查找就出錯了。所以升序查找就必須升序排列;反過來,降序查找就必須降序排列。
(2)降序查找,傳回的是大於60中的最小數或第一個等於60的數的位置數;也可以理解為統計了所有大於60的包括第一個等於60的數值的個數。這一點與升序篩選不同:如果存在與查找值相同的數值,則升序定位到等於查找值的最後一個數值,而降序定位到等於查找值的第一個數值。
明白了MATCH是誰和基本用法,估計大家都會認為MATCH有點雞肋:就用來返回位置數,跟我想要查找特定的值相差很遠呀。
正因為這樣,日常工作中MATCH函數單獨出場幾乎麼有。 MATCH不氣餒,為了贏得自己在函數界的一席之地,它採用了一項有效策略──同巨人結伴共舞!因此有了大名鼎鼎的VLOOKUP MATCH組合、INDEX MATCH組合。
#1. VLOOKUP MATCH組合
下面是一張成績明細表,我們需要找到「元菁米、王慧、廉楓、餘邁」這幾個人的總分、平均分和等級。
如果單用VLOOKUP函數,我們需要頻繁的修改第三參數。當查總分的時候,在P2儲存格輸入公式:
=VLOOKUP(O2,A2:M142,11,0)
而要查平均分的時候,就需要修改第三參數為12,公式變成:
=VLOOKUP(O2,A2:M142,12,0)
=VLOOKUP($O2,$A$2:$M$142,MATCH(P$1,$A$1:$M$1,0), 0)
=VLOOKUP($O2,$A$2:$M$142,COLUMN(K1),0)
很明顯COLUMN就不適合了,但MATCH完全勝任。
2. INDEX MATCH組合
#還是查成績,如下: 我們單用INDEX查詢成績的話,何叢良的數學成績查詢公式:=INDEX(A2:D9,5,2),物理成績查詢公式:
= INDEX(A2:D9,5,4)。
INDEX(A2:D9,5,2)。物理成績位於第5行第4列的交叉點上,所以公式是
INDEX(A2:D9,5,4)。
=INDEX($A$2:$D$9,MATCH($F3,$A$2:$A$9,0),MATCH(G$2,$A$2 :$D$2,0))
=VLOOKUP($ F3,$A$2:$D$9,MATCH(G$2,$A$2:$D$2,0),0)
相關學習推薦:excel教學
以上是Excel函數學習之MATCH()函數的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!