Excel函數公式大全:史上最全MATCH函數教程

2022-01-02 Excel函數與公式

收錄於話題 #跟李銳學Excel 782個

點擊下方 ↓ 關注,每天免費看Excel專業教程

置頂公眾號設為星標 ↑ 才能每天及時收到推送

個人微信號 | (ID:LiRuiExcel520)微信服務號 | 跟李銳學Excel(ID:LiRuiExcel)微信公眾號 | Excel函數與公式(ID:ExcelLiRui)

關鍵詞:match

MATCH函數是Excel中廣泛應用的查找引用函數,除自身具有返回查找數據的相對位置的功能外,MATCH函數還能結合眾多的函數,在工作中展現Excel的強大威力。

比如著名的INDEX+MATCH組合就能輕鬆搞定很多VLOOKUP的高級應用案例,可見MATCH函數無疑屬於職場辦公必備函數。

為了讓大家認識MATCH函數那些不為人知的強大功能,本文整理了多種MATCH函數的應用方法,便於在自己的實際工作中直接借鑑和使用。

本教程內容擔心記不全的話,可以分享到朋友圈給自己備份一份。

除了本文內容,還想全面、系統、快速提升Excel技能,少走彎路的同學,請搜索微信公眾號「跟李銳學Excel」點擊底部菜單的「知識店鋪」或下方掃碼進入

更多不同內容、不同方向的Excel視頻課程

長按識別二維碼↓獲取

(手機微信掃碼▲識別圖中二維碼)

MATCH用於返回要查找的數據在區域中的相對位置。下面介紹她的語法和參數用法。

語法

MATCH(lookup_value,lookup_array, [match_type])

用通俗易懂的方式可以表示為

MATCH(要查找的數據, 查找區域, 查找方式)

MATCH 函數語法具有下列參數:

第一參數:要在lookup_array中匹配的值。例如,如果要在電話簿中查找某人的電話號碼,則應該將姓名作為查找值,但實際上需要的是電話號碼。

第一參數可以為值(數字、文本或邏輯值)或對數字、文本或邏輯值的單元格引用。

第二參數:要搜索的單元格區域。

第三參數:可選。數字 -1、0 或 1。match_type參數指定 Excel 如何將 lookup_value與lookup_array中的值匹配。此參數的默認值為 1。

下表介紹該函數如何根據 match_type參數的設置查找值。

對於非高級用戶可以略過這部分直接看後面的示例,因為99%的情況下,第三參數只用0就足以應付日常工作需求啦!

Match_type

行為

1 或省略

MATCH查找小於或等於 lookup_value的最大值。lookup_array參數中的值必須以升序排序,例如:...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。

0

MATCH查找完全等於 lookup_value的第一個值。lookup_array參數中的值可按任何順序排列。

-1

MATCH查找大於或等於 lookup_value的最小值。lookup_array參數中的值必須按降序排列,例如:TRUE, FALSE, Z-A, ...2, 1, 0, -1, -2, ... 等等。

MATCH函數返回匹配值在第二參數中的位置,而非其值本身。例如,MATCH("b",{"a","b","c"},0)返回 2,即「b」在數組 {"a","b","c"} 中的相對位置。

匹配文本值時,MATCH 函數不區分大小寫字母。

如果 MATCH函數查找匹配項不成功,它會返回錯誤值 #N/A。

看了這麼多文字,很多同學是不是有點暈?

上兩個簡單易學的示例,讓你秒懂MATCH函數~

先來看個縱向查找定位的案例吧


C2輸入以下公式。

=MATCH("王紅強",A:A,0)

第一參數:要查找的數據,這裡是「王紅強」

第二參數:在哪裡查找,這裡是在A列查找,所以寫A:A

第三參數:按完全匹配查找,寫0

連起來就是在A列中查找和「王紅強」完全匹配的數據,並返回其位置。

公式結果為8,表示找到數據並且數據在第8行。

明白了縱向查找,再來看個橫向查找定位的案例


C2輸入以下公式。

=MATCH("梨",1:1,0)

第一參數:要查找的數據,這裡是「梨」

第二參數:在哪裡查找,這裡是在第一行中查找,所以寫1:1

第三參數:按完全匹配查找,寫0

連起來就是在第一行中查找和「梨」完全匹配的數據,並返回其位置。

公式結果為4,表示找到數據並且數據在第4列,即D列。

是不是很簡單,現在你已經學會了MATCH函數最基礎的應用啦

後續還有更精彩的應用案例等著你~

上一節中咱們學習了MATCH函數最基礎的用法(按條件完全匹配查詢),但在工作中很多時候會遇到查詢條件並不那麼明確,只能根據部分已知條件模糊查詢。

下面就結合一個案例,展示MATCH函數根據模糊條件查找的功能。


上圖中A列是各年份的產品批號,包含2016和2017年,現在要查詢2017年的批號從哪行開始出現。

在C2單元格輸入以下公式。

=MATCH("*2017*",A:A,0)

上一節教程中,我們學習了MATCH函數按照模糊條件查詢的方法,但其只適用於普通字符的字符串,當要查找的數據包含一些特殊字符(比如星號*問號?波浪符~)時,原公式結果就會出錯了。

那麼,遇到這幾種特殊符號,我們如何應對呢?

下面就結合一個實際案例進行講解。


上圖中A列是數據源區域,放置了很多激活碼,由數字和符號構成,現在需要查找激活碼「*5~?」的位置。

如果使用常規的查找方法,比如以下公式,會返回錯誤結果。

錯誤公式:=MATCH("*5~?",A:A,0)

那麼,應該如何修正這個公式,才能得到正確結果呢?

在C2單元格輸入以下公式。

正確公式:=MATCH("~*5~~~?",A:A,0)

之前幾節的學習中,我們掌握了MATCH的基本查找方法,根據模糊條件查找的方法以及查找內容包含特殊符號的處理方法。

今天,咱們一起來看一個逆向查找提取文本數據位置的案例。


上圖中A:B列是數據源,放置著員工編號和業務員姓名,要提取B列最後一個文本所在行號。

在D2輸入以下公式。

=MATCH(CHAR(1),B:B,-1)

之前幾節教程中,我們掌握了MATCH函數的各種查找方法,還學到了逆向提取數據位置的處理方法,今天再來學一招條件查找下的MATCH技術。

老規矩,先上案例,對照講解。

上圖中左邊是數據源,包含業務員的編號、姓名和銷售額,現在要查找最後一個銷售額大於50000的業務員所在行號。

在E2輸入以下數組公式,按<Ctrl+Shift+Enter>組合鍵。

=MATCH(1,0/(C:C>50000))

在之前的教程裡,我們介紹的都是單獨應用MATCH函數的方法,其實MATCH函數跟其他函數配合使用,可以產生更大威力。

今天咱們先來介紹一個統計不重複值個數的方法。

上案例,看下圖


在上圖中左側是數據源,包含值班日期和值班人員的姓名,其中值班人員有重複,即有的人值班過多天,現在要計算參與值班的人數(排重後)。

在D2輸入數組公式,按<Ctrl+Shift+Enter>組合鍵。

=COUNT(0/(MATCH(B2:B8,B2:B8,0)=ROW(1:7)))

曾經有人問過我一個問題:

Excel中哪個函數的威力最大?

Excel中的什麼功能最強大?

不知道你遇到這種提問會如何回答,我覺得關鍵在於Excel在誰的手裡使用,其實沒有最牛的功能,只有最牛的人!

有時候,看似很簡單的函數,只要能靈活運用,平凡的函數也能用出花來。

這節課程裡,咱們就來看一個比對兩列數據差異的案例,出場的兩位都是大家耳熟能詳的函數,一個是COUNT,一個是MATCH,但別小看他倆,不信你先看看這個題目自己能否搞的定吧。


上圖中左側是數據源,包括某班級兩門考試前10名學生的數學成績和語文成績,因為每科成績單獨排名,所以數學的前10名與語文的前10名學生並不完全一致。

現在要做的是,對比兩個科目的前10名學生,找出相同的個數。

在E2單元格輸入數組公式,按<Ctrl+Shift+Enter>組合鍵。

=COUNT(MATCH(B2:B11,C2:C11,0))

上一節中,我們講解了一個MATCH函數配合COUNT函數,輕鬆對兩列數據進行比對並且統計其中相同值個數的案例。

這一節中,我們再來介紹一個這兩個函數搭配上場的精彩應用。

多條件計數的需求在工作中經常遇到,處理方式很多,下面就來看這個案例中MATCH是如何搞定多條件統計的。


上圖中左側是數據源區域,包含出庫日期、出庫產品以及出庫的經銷商名稱,現在需要統計其中兩個經銷商(大地集團和希望集團)的蘋果的出庫次數之和。

在E2單元格輸入數組公式,按<Ctrl+Shift+Enter>組合鍵。

=COUNT(MATCH(B2:B8&C2:C8,"蘋果"&{"大地集團","希望集團"},0))

今天,我們結合一個實際案例,介紹一下靈活應用函數的思路和精彩。

上圖中左側是數據源,黃色區域是需要輸入公式計算的單元格。

數據源中已知用餐日期和時間,需要根據用餐時間和規則自動判斷餐別。

規則如下:

1、早餐時間:5:30-8:30

2、午餐時間:11:30-13:30

3、晚餐時間:17:30-20:30

在C2輸入以下公式,將公式向右、向下拖拉填充到黃色區域。

=IF(MATCH($B2*48,{11;23;35})=COLUMN(A1),"√","")

從前面九節課的學習中,我們已經知道,MATCH函數不但可以提取數據位置,而且可以按照條件查詢,比對兩列數據的差異,今天再來結合一個案例,展現MATCH函數按不同權重多條件排序的技術。


上圖中左側是數據源區域,包含各個代表隊在某次賽事中取得的金牌、銀牌、銅牌數量,現在需要根據各個代表隊的獎牌數量計算其總名次。

名次的排名規則如下:

1、首先按金牌數量降序排列。

2、金牌數量一致的代表隊,比較其銀牌數量。

3、金牌和銀牌數量都一致時,比較銅牌數量。

其實這就是一個分權重的多條件排序問題。

選定E2:E8單元格區域,輸入區域單元格數組公式,按<Ctrl+Shift+Enter>組合鍵。

=MATCH(MMULT(B2:D8*10^{4,2,0},{1;1;1}),LARGE(MMULT(B2:D8*10^{4,2,0},{1;1;1}),ROW(1:7)),0)

希望這篇文章能幫到你!

更多經典的實戰技能,已整理成超清視頻的系統課程,方便你系統提升。

>>推薦閱讀 <<

(點擊藍字可直接跳轉)

VLOOKUP遇到她,瞬間秒成渣!

99%的財務會計都會用到的表格轉換技術

86%的人都撐不到90秒,這條萬能公式簡直有毒!

最有用最常用最實用10種Excel查詢通用公式,看完已經贏了一半人

以一當十:財務中10種最偷懶的Excel批量操作

為什麼要用Excel數據透視表?這是我見過最好的答案

如此精簡的公式,卻刷新了我對Excel的認知…

錯把油門當剎車的十大Excel車禍現場,最後一個亮了…

讓人腦洞大開的VLOOKUP,竟然還有這種操作!

Excel動態數據透視表,你會嗎?

讓VLOOKUP如虎添翼的三種擴展用法

這個Excel萬能公式輕鬆KO四大難題,就是這麼簡單!

SUM函數到底有多強大,你真的不知道!

長按識別二維碼↓進知識店鋪

(長按識別二維碼)

由於有的老學員是4年前購買的課程,因買過的課程較多或因時間久忘記從哪裡聽課,所以專門將各平臺的已購課程入口統一整理至下圖。

1、搜索微信公眾號「LiRuiExcel」點擊底部菜單「已購課程」,即可查看到你在各平臺的已購課程,方便大家找到並隨時復學課程。

2、課程分銷推廣的獎金也是由此公眾號轉帳至大家的微信錢包(關注後可自動收錢,進入你的微信零錢,在微信支付有轉帳記錄),老學員可以進「知識店鋪」點擊底部按鈕「推廣賺錢」或者「我的」-「推廣中心」查詢到推廣獎勵明細記錄,支持主動提現

此外,裡面還有小助手的聯繫方式,有問題或學習需求可以留言反饋,助手在24小時內回給到回復。

按上圖↑識別二維碼,查看詳情

請把這個公眾號推薦給你的朋友:)

今天就先到這裡吧,更多乾貨文章加下方小助手查看。

如果你喜歡這篇文章

歡迎點個在看,分享轉發到朋友圈

乾貨教程 · 信息分享

歡迎掃碼↓添加小助手進朋友圈查看

長按下圖 識別二維碼

關注微信公眾號(ExcelLiRui),每天有乾貨

關注後置頂公眾號設為星標

再也不用擔心收不到乾貨文章了

關注後每天都可以收到Excel乾貨教程

請把這個公眾號推薦給你的朋友

↓↓↓點擊「閱讀原文」進知識店鋪

     全面、專業、系統提升Excel實戰技能

相關焦點