VLOOKUP進階用法:一對多匹配查詢

2020-12-19 Excel歸故鄉

各位讀者朋友們大家好,今天來給大家說一下如何用VLOOKUP函數進行一對匹配。這個技巧在實際工作也是非常常用,通常問的朋友也比較多,今天就來給大家詳細介紹一下。

首先來看一下一對多匹配是什麼意思,顧名思義就是一個查找值對應多個結果,如下圖所示,比如一個班級有多名同學,我們怎麼能夠一次性將二班的同學匹配出來?這就是我們今天要講解的用法。

首先我們來分析一下,如果要將二班全部匹配出來,直接用二班匹配肯定是不行的,根據VLOOKUP的特性,只能匹配到第一次二班對應的同學。那要想將二班對應的同學全部找出來,就要將這些同學所在行對應的二班做出區分,比如,二班1,二班2,二班3……以此類推,而我們匹配的時候也用二班1,二班2,二班3這樣對應的內容去匹配,是不是就可以匹配出來了呢?

思路有了,就看如何實現。首先是如何將二班進行編號,我們觀察發現二班後面的數字,實際上就是二班這個關鍵字從上到下第幾次出現的次數。那麼我們就可以用COUNTIF來判斷出現次數,那我們就添加一個輔助列來實現出現次數。我們來對班級進行擴展選區的計數=COUNTIF(B$2:B2,B2)注意這裡參數的寫法,條件區域我們對前半部分絕對引用,後半部分相對引用,是為了讓它在我們下拉公式的時候,這個區域自動擴展,從而得到計算出現次數的效果。可以看到我們標黃的部分就是二班所在的位置,分別對二班出現次數進行了編號,如下圖所示:

但是到這裡,還沒達到我們需要的二班1,二班2,二班3……這樣的效果,其實有了數字就已經很接近了,只需要將數字所在的單元格與這個數字進行連接即可,公式=B2&COUNTIF(B$2:B2,B2),效果如下:

第二步,我們將相同的班級進行了區分之後,就只需要用對應的班級+編號去匹配即可,那如何生成隨著單元格下拉而生成的二班1,二班2,二班3呢?我們可以用ROW函數,這個函數與COLUMN函數的功能恰好相反,它是用來獲取參數單元格的行號,用法如下:

而有了這個函數後,我們的匹配值是不是就可以用要匹配的班級連接ROW函數,在下拉的時候是不是就可以自動生成二班1,二班2,二班3……用法如下:

以上兩個問題解決之後,我們發現,這時候直接用VLOOKUP函數匹配即可,最終整理結果如下:

但是我們發現二班的同學是全部找出來了,但是後面存在一些錯誤值,這是因為二班總共就只有4位同學,到第五個單元格時,查找值就是二班5,但是數據源中並沒有二班5了,自然就會出現錯誤值。為了讓表格美觀,我們可以在外層嵌套一層iferror函數,讓它出現錯誤值的時候顯示空白即可=IFERROR(VLOOKUP(I$1&ROW(A1),$A$1:$G$22,3,),"")

到這裡我們就完成了VLOOKUP函數的一對多匹配,其實寫函數並不困難,重要的是思路,我們每一篇文章都在給大家講解思路,一步一步帶著大家去完成操作,讓大家知其然且知其所以然。

寫在最後,原創不易,請大家多多支持,期待與大家互相學習,共同進步!

相關焦點

  • VLOOKUP函數進階用法:模糊一對多匹配之匹配帶關鍵字的所有內容
    首先我們來整理一下思路:我們把模糊一對多拆開來看,就是模糊匹配+一對多匹配,跟之前講的一對多匹配一樣,我們需要用一個輔助列將包含關鍵字的全稱做一個標記區分,我們可以參考之前的方法,用出現次數來計數。但是我們這裡注意,我們需要用關鍵字來進行模糊計數,這個用法我們後面COUNTIFS函數專題裡面會講,這裡直接給大家做出來,大家知道有這個用法即可,輔助列公式=COUNTIFS(B$2:B2,"*"&F$2&"*"),注意這裡我們COUNTIFS條件,是用關鍵字前後連接星號的形式。
  • vlookup函數使用匯總大全!
    D:精確查找就用0,模糊匹配就用1二:vlookup一般使用場景?1、vlookup常規查詢這裡用到的公式是:=VLOOKUP(A16,$C$1:$E$13,2,0)3、vlookup函數模糊匹配這裡用到的公式是:=VLOOKUP(E2,$I$1:$J$7,2,1)
  • 不藉助任何輔助列,VLOOKUP函數實現一對多查詢技巧
    舉一個一對多查詢匹配的工作實例,左邊是原始數據,一個部分有對應多個員工,我們現在需要根據部門把這個部門的員工姓名找出來藉助輔助列的方法VLOOKUP函數是一對一查詢的,查詢區域B列如果不是唯一的,那麼插入一個輔助列,輸入的公式是:=C2&
  • Excel中查找函數vlookup和index—match使用方法詳細介紹
    在Excel中,談到查找函數推薦最多的就是vlookup函數和index—match函數,很多人把兩個函數作為判斷Excel水平的重要指標,可想而知這兩個函數在Excel數據計算中的重要性,本文就和大家一起來看看這兩個函數的用法吧。
  • Excel一對多萬能查詢公式index+small+if,理清思路就會了!
    工作中vlookup函數更多用於一對一的查詢,如果碰到了一對多的情況,經常會看到使用index+small+if函數公式例如左右是基礎信息,然後我們列出一個部門,需要把部門成員全部找出來,則可以使用這個一對多的萬金沒公式:=INDEX
  • index+small+if函數實現一對多查詢,或許有點難,但真的很實用
    Hello,大家好,當我們使用vlookup函數查找數據遇到重複值得時候,函數僅僅會返回第一個查找到的結果,但是在日常的工作中我們經常要根據一個值來查找到多個結果,這個時候vlookup函數就不能滿足我們需求了,今天就跟大家分享下在excel中如何實現一對多查詢
  • vlookup居然能用來合併同類項,這個公式設計的也太巧妙了
    Hello.大家好,今天跟大家分享下如何合併同類項,合併同類項就是將相同類別的數據合併在一個單元格中,最常見的就是將同一部門或者同一班級等相同類別的數據合併在一起,合併同類項的方法很多,今天主要跟大家分享下如何使用vlookup函數合併同類項
  • 學會VLOOKUP函數的一個隱藏參數 告別 N/A錯誤值
    假設現在,已知成績數據表和需要匹配數據表,現在需要根據姓名在成績數據表中匹配姓名對應的成績,需要用vlookup函數匹配。所以要學好vlookup,需要了解這個函數的來源。二、VLOOKUP函數的來源vlookup函數是【查找】【引用函數】,而vlookup函數【第二參數】不好理解,是因為,第二參數有個隱藏的一個【要點】,想要把VLOOKUP函數學透徹,必學先了解這個函數是來源,最開始是沒有這個函數的,是match【查找函數】和Index【引用函數】這兩個函數簡化成了一個vlookup查找引用函數
  • Excel 中Vlookup函數更靈活的擴展用法
    在Excel 中Vlookup函數是很常用到的用於匹配數據的函數。今天我們要更進一步地學習它的進階用法。如下圖所示:我們在左側黃色單元格分別輸入查詢編號,商場號,是否促銷來獲得左下的商品編號,商品名稱,價格在本例中主要使用VLOOKUP函數來實現具體步驟如下:
  • 一對多查詢,職場上的你真的會嗎?
    具體公式用法: INDEX函數 語法:=INDEX(區域,行數,列數) 比如在單元格中輸入公式=INDEX(A1:C11,7,2)就可以獲取查找「王曉光」在表格中的位置。
  • VLOOKUP查詢時為什麼會出現 N/A?原來知道這6種解決方法這麼重要
    下圖中E4單元格的姓名後面存在一個空格,導致查詢結果出現錯誤值#N/A。下圖中B11單元格的姓名後面存在一個空格,導致查詢結果出現錯誤值#N/A。下圖中我們可以看到B5單元格的姓名和E4單元格的姓名幾乎一樣,但查詢結果也是返回錯誤值#N/A,公式沒有寫錯,單元格中也沒有存在空格,這時要考慮是否是查找值或查找區域存在非列印字符。如何判斷是否存在非列印字符?
  • Oracle分組查詢group by的用法及講解
    group by是sql中比較強大的功能,是在對數據分組統計時必不可少的用法。但是,對於很多經驗不足的同學,經常會寫錯。今天我們就以Oracle為例,來講解下分組查詢group by的用法。原因是group by 分組查詢,select子句後的欄位必須來自group by後的分組欄位。於是 我們執行SQLSELECT SSEX FROM STUDENT GROUP BY SSEX;這下成功地將數據分為了兩組。
  • Python中使用re模塊實現正則表達式的匹配字符串操作
    導入re模塊的代碼比較簡單,它是這樣的:Import re今天的學習內容就是使用正則表達式匹配字符串。匹配字符串的實際意義就是查找、查詢字符串。在Python中,使用正則表達式匹配字符串,多數情況下,匹配成功後立即返回Match對象,不成功就返回None值。None值就是假值,這個不用多述。Match對象是什麼呢?
  • 王者榮耀:閃現的4種進階用法,如果不用來逃跑,你會怎麼使用?
    遊戲不能一個人玩,技術也不要一個人練,這裡是口袋電競君,讓你在遊戲中發現新的樂趣,學習新的技術,今天電競君要和大家分享的是王者榮耀:閃現的4種進階用法,如果不用來逃跑,你會怎麼使用?隨著不斷的摸索,我們發現閃現有著非常多的用法,也能夠秀出許多不可思議的操作,今天電競君就和大家來聊聊閃現的4種進階用法!如果不用來逃跑,你會怎麼使用?
  • 根據條件排序其實很簡單,使用vlookup函數即可搞定
    並且希望數據是按照:總經辦,人事部,行政部,財務部,市場部,銷售部這樣的順序進行排列的,如果我們直接按照部門升序或者降序都無法達到要求,如下圖這個時候我們就需要手動調整數據的位置,排序就失去了意義,今天就跟大家分享2種根據條件排序的方法,操作都很簡單,下面就讓我們來一起操作下一、使用vlookup
  • lookup函數的使用方法,含向量和數組形式實例及與vlookup的區別
    以下是就 Excel lookup函數的使用方法,列舉了向量形式和數組形式兩種實例,並且分享了 lookup 與 vlookup 的區別,實例中操作所用版本均為 Excel 2016。三、lookup函數與vlookup函數的區別lookup函數相當於vlookup函數的近似匹配;lookup主要用於查找一行或一列,vlookup即可用於查找一行一列,也可用於查找多行多列
  • steamDB使用攻略:正版遊戲玩家進階信息查詢平臺
    這篇文章是steam正版遊戲玩家的進階攻略,雖然可能比較枯燥,但是會比較實用。今天省錢君來說一下steamDB,該網站使用玩家標籤:資深steam玩家,外區玩家。steamDB是一個第三方steam資料庫網站,當前國內許多steam相關的資料庫類網站都是抓取的steamDB上面遊戲信息,在該網站能夠準確查詢到steam遊戲的區域信息,打折信息,價格變動信息以及steam遊戲激活碼相關信息,還能批量入庫免費遊戲,功能很強大。
  • 幫你全面學習match的用法
    許多人見到Match都會想到「比賽」,其實match這個詞是個轉換詞,它可以做名詞也可以做動詞,在具體的語言環境中有它明確的詞義和詞性,這裡有思維導圖列出了match的具體用法,便於大家對match有個完整的理解和記憶,更準確地運用這個詞,下面我們來學習match的具體用法: