點擊下方 ↓ 關注,每天免費看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實戰技能