首頁 > 專題 > Excel > 主體

Excel函數學習之MATCH()函數的使用方法

青灯夜游
發布: 2023-03-10 19:47:00
轉載
13430 人瀏覽過

今天我們來聊聊另外一個家族-去找家族!說起查找家族,相信大家首先想到的就是VLOOKUP函數。這位大哥打拼沙場多年,早已名揚萬裡!相信接觸過Excel的小夥伴多少略有耳聞。然而今天我們要說的是它身邊得力小弟──MATCH函數!

Excel函數學習之MATCH()函數的使用方法

這個小弟呀,雖然單拎出來能力不咋的,但是跟著大哥組隊,那效果可是槓槓的!

 

Excel函數學習之MATCH()函數的使用方法

 

我們先來認識認識他吧

##一、MATCH是誰?

MATCH是尋找定位函數,它傳回的並不是資料本身,而是該資料在單列或單行中的位置。類似排隊報數,站在第幾個,MATCH就報幾號! (注意:它只支援單列或單行資料查找哦~)

函數結構:MATCH(找啥,在哪裡找[單行或單列],查找類型)

查找類型:3種。分別以0、1、-1代表。 0表示精確查找,1表示升序查找,-1表示降序查找。

二、MATCH基本用法

1.精確找出

舉個栗子

Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法

我們想知道「張三」在「姓名」這列區域排第幾位。

Excel函數學習之MATCH()函數的使用方法

公式:

#=MATCH(B3,B$2:B$8,0)

Excel函數學習之MATCH()函數的使用方法

公式解析:

#找啥:找“張三”,所以是B3單元格

在哪裡找:在姓名欄位B2:B8中找。為了防止向下填入公式姓名列區域變動,需要用$將它固定住,即B$2:B$8。

查找類型:0表示精確查找。精確查找不需要排序。

2.升序查找

升序查找就是要找出小於等於查找值的最大值然後回傳其所在位置。要求資料必須升序排列。

同樣舉個栗子

Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法

我們想知道不大於60的有幾個。

Excel函數學習之MATCH()函數的使用方法

首先將成績依升序排列。

Excel函數學習之MATCH()函數的使用方法

然後在D3中輸入公式:

=MATCH(60,B20:B40,1)

Excel函數學習之MATCH()函數的使用方法

#確定後就得到了人數8人。很顯然升序排列後,傳回的是小於等於60的最後一個數值的位置數;也可以理解為統計了凡是不大於60的包括所有等於60的數值的個數。

3.降序尋找

降序找出就是找出大於等於尋找值的最小值然後回傳其所在位置。要求必須降序排列。

同樣舉個栗子

Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法

我們想知道不小於60的有幾個。接著上面的,首先降序排列資料。

Excel函數學習之MATCH()函數的使用方法

然後在E3中輸入公式:

=MATCH(60,B20:B40,-1)

Excel函數學習之MATCH()函數的使用方法

確定後得到不小於60的有14人。

得到兩個很顯然的結果:

(1)降序後,升序查找就出錯了。所以升序查找就必須升序排列;反過來,降序查找就必須降序排列。

(2)降序查找,傳回的是大於60中的最小數或第一個等於60的數的位置數;也可以理解為統計了所有大於60的包括第一個等於60的數值的個數。這一點與升序篩選不同:如果存在與查找值相同的數值,則升序定位到等於查找值的最後一個數值,而降序定位到等於查找值的第一個數值。

明白了MATCH是誰和基本用法,估計大家都會認為MATCH有點雞肋:就用來返回位置數,跟我想要查找特定的值相差很遠呀。

正因為這樣,日常工作中MATCH函數單獨出場幾乎麼有。 MATCH不氣餒,為了贏得自己在函數界的一席之地,它採用了一項有效策略──同巨人結伴共舞!因此有了大名鼎鼎的VLOOKUP MATCH組合、INDEX MATCH組合。

三、與巨人共舞

#1. VLOOKUP MATCH組合

下面是一張成績明細表,我們需要找到「元菁米、王慧、廉楓、餘邁」這幾個人的總分、平均分和等級。

Excel函數學習之MATCH()函數的使用方法

如果單用VLOOKUP函數,我們需要頻繁的修改第三參數。當查總分的時候,在P2儲存格輸入公式:

=VLOOKUP(O2,A2:M142,11,0)

而要查平均分的時候,就需要修改第三參數為12,公式變成:

=VLOOKUP(O2,A2:M142,12,0)

##如此使用很麻煩,那怎麼省事呢?

MACTH抓緊機會向VLOOKUP推薦了自己,用自己查詢「總分」「平均分」「等級」在A1:M1行中的位置數取代第三參數,就可以不需要手動修改。這時找出總分的公式就變成:

=VLOOKUP($O2,$A$2:$M$142,MATCH(P$1,$A$1:$M$1,0), 0)

然後右拉填充再下拉填充公式就完成了查詢。如下:

Excel函數學習之MATCH()函數的使用方法

可能有夥伴看過我們前面的文章《會用Column嗎?它讓公式不那麼笨。 》,說用COLUMU取代第三參數比較簡單:

=VLOOKUP($O2,$A$2:$M$142,COLUMN(K1),0)

Excel函數學習之MATCH()函數的使用方法

#說得沒錯,目前查詢值連續排列的,並且排列順序與成績明細排列一致,用COLUMN更簡單。如果是按下面的兩個表格查詢呢?

    Excel函數學習之MATCH()函數的使用方法Excel函數學習之MATCH()函數的使用方法

很明顯COLUMN就不適合了,但MATCH完全勝任。

Excel函數學習之MATCH()函數的使用方法

2. INDEX MATCH組合

#還是查成績,如下:

Excel函數學習之MATCH()函數的使用方法

我們單用INDEX查詢成績的話,何叢良的數學成績查詢公式:

=INDEX(A2:D9,5,2),物理成績查詢公式: = INDEX(A2:D9,5,4)

INDEX查詢就是以指定的查詢區域為座標系,透過行座標和列座標查詢所需數值。何叢良成績的查詢區域是A2:D9,數學成績位於第5行和第2列的交叉點上,所以公式就是

INDEX(A2:D9,5,2)。物理成績位於第5行第4列的交叉點上,所以公式是INDEX(A2:D9,5,4)

透過這樣輸入行數、列數的方式查詢太笨拙,不實用。因此MATCH又見縫插針地向INDEX推薦了自己。 MATCH可依條件找出定位值,取代人工輸入行數、列數。成績查詢公式變成:

=INDEX($A$2:$D$9,MATCH($F3,$A$2:$A$9,0),MATCH(G$2,$A$2 :$D$2,0))

Excel函數學習之MATCH()函數的使用方法

當然這裡也可以用VLOOKUP MATCH組合,公式:

=VLOOKUP($ F3,$A$2:$D$9,MATCH(G$2,$A$2:$D$2,0),0)

那VLOOKUP MATCH組合與INDEX MATCH組合有何差別呢?這個問題在後續的函數課堂中我們將談到。有興趣的夥伴可以自己琢磨琢磨。

怎麼樣,大哥和小弟的組合是不是很棒呢?所以說MATCH函數不愧是函數中的哲學家!今天的函數課就到此為止,我們下期再見。

相關學習推薦:excel教學

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

相關標籤:
來源:itblw.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!