題外話:罌粟姐姐最近被問的最多的問題就是“我應(yīng)該哪個V哪個?”(可見,VLOOKUP真的很重要!)
在Excel函數(shù)界,有400多位成員,只有VLOOKUP是公認的大眾情人。這么多年來,即使有更強大的函數(shù)組合能夠?qū)崿F(xiàn)它的功能,也從來沒有誰能真正取代它的江湖地位。
在8組Excel函數(shù),幫您解決工作中80%的難題,10個Excel核心技巧,輕松應(yīng)對80%的工作需求這兩篇文章里都有VLOOKUP的零散介紹,這次罌粟姐姐將為大家揭開VLOOKUP的神秘面紗,初級、中級、高級一應(yīng)俱全,必須收藏。
1、VLOOKUP入門——小白學(xué)習(xí),必須掌握
VLOOKUP是一個查找函數(shù),給定一個查找的目標(biāo),它就能從指定的查找區(qū)域中查找返回想要查找到的值。
英文語法:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
中文語法:VLOOKUP(找誰,在什么范圍找,在范圍里的第幾列,精確查找或模糊查找)
案例:已知全班的期末考試成績,現(xiàn)需要查找出指定的部分學(xué)生的成績。
公式:=VLOOKUP(E2,$B$2:$C$18,2,0)
注意:
(1)函數(shù)的第3個參數(shù)為查找區(qū)域的第幾列,不能理解為數(shù)據(jù)表中實際的列號。
(2)函數(shù)的第4個參數(shù)決定了查找方式,如果為0或False,函數(shù)則為精確匹配查找,而且支持無序查找;如果為1或Ture,函數(shù)則使用模糊匹配方式查找,查找區(qū)域的第一列必須為升序,否則不能返回正確的結(jié)果。
(3)當(dāng)存在多條滿足條件的記錄時,VLOOKUP函數(shù)只能返回第1個滿足條件的記錄。
2、VLOOKUP中級——成為大神的必經(jīng)之路
VLOOKUP除了簡單的查找外,還可以實現(xiàn)一些更復(fù)雜的查找匹配。
案例1:多列查找快速輸入公式
多列查找時,其他參數(shù)不變,公式=VLOOKUP($H7,$B$1:$F$18,?,0),最重要的是要修改第三個參數(shù)的值,因為列在變化,第3個參數(shù)也在發(fā)生變化。
大學(xué)語文在姓名后的第一列,那么第三個參數(shù)應(yīng)該是1,=VLOOKUP($H7,$B$1:$F$18,1,0);
高等數(shù)學(xué)在姓名后的第二列,那么第三個參數(shù)應(yīng)該是2,公式=VLOOKUP($H7,$B$1:$F$18,2,0)。
我們可以將第幾列用其他函數(shù)的計算結(jié)果來實現(xiàn),一般情況下最常用的有兩種方法:
(1)1=COLUMN(A1);2=COLUMN(B1)……
(2)1=MATCH(I6,$C$1:$F$1,0);2=MATCH(J6,$C$1:$F$1,0)……
最終公式有兩種:
(1)=VLOOKUP($H7,$B$1:$F$18,COLUMN(B2),0)
(2)=VLOOKUP($H7,$B$1:$F$18,MATCH(I$6,$B$1:$F$1,0),0)
案例2:數(shù)值區(qū)間模糊查找
注意:引用的數(shù)字區(qū)域必須由小到大排列,輸出結(jié)果是和查找值最接近但比它小的那個值。
公式=VLOOKUP(D4,$A$1:$B$10,2,1)
案例3:模糊條件模糊查找
VLOOKUP的第一參數(shù)可以自動進行模糊匹配,將以E3開頭的單元格找到并匹配其對應(yīng)的單元格內(nèi)容。
公式=VLOOKUP(E3,$A:$B,2,1)
案例4、使用通配符精確查找
VLOOKUP的第一個參數(shù)還支持通配符“*”,使用通配符后相當(dāng)于確定了查找條件,可以實現(xiàn)精確查找,查找結(jié)果也是返回首次滿足條件的記錄的相應(yīng)值。
公式=VLOOKUP("*"&F5&"*",$A:$B,2,0)
3、VLOOKUP高級——江湖高手,無形勝有形
案例1:從右往左查找
因為VLOOKUP第三個參數(shù)必須為正數(shù),所以從函數(shù)本身來理解只能實現(xiàn)由左向右的查找,于是很多小伙伴在遇到反向查找問題時,總是習(xí)慣粘貼復(fù)制調(diào)換位置,這個當(dāng)然是方法之一。
還有一種方法是借用INDEX函數(shù)+MATCH函數(shù)實現(xiàn),非常簡單方便。
但是既然說到VLOOKUP,那我們就看看到底能不能用VLOOKUP實現(xiàn)反向匹配。
首先需要利用IF函數(shù)將A列和B列互換。
公式=IF({1,0},B1:B18,A1:A18)
公式解讀:數(shù)組公式,1相當(dāng)于TURE,0相當(dāng)于FALSE,當(dāng)為1時,它會返回IF的第二個參數(shù)(B1:B18),為0時返回第二個參數(shù)(A1:A18)。
輸入公式結(jié)束后同時按Ctrl+Shift+Enter三鍵出來結(jié)果。
B列和C列實現(xiàn)互換后,再直接用VLOOKUP就可以實現(xiàn)反向匹配。
公式=VLOOKUP(G5,IF({1,0},B1:B18,A1:A18),2,0)
然后有小伙伴會問,你這是兩列在一起,如果隔列反向查找怎么辦呢?當(dāng)然是同樣的辦法啦。
公式=VLOOKUP(G5,IF({1,0},C1:C18,A1:A18),2,0)
只需要把對應(yīng)的列進行修改即可。注意,第三個參數(shù)查找列依舊為2,因為IF函數(shù)構(gòu)建的是一個兩列的數(shù)據(jù)表。
案例2:多條件查找
在有多個條件的情況下,我們通常需要將多個條件先合并,再利用IF函數(shù)數(shù)組特性重構(gòu)原始數(shù)據(jù)。
公式=VLOOKUP(E3&F3,IF({1,0},A1:A13&B1:B13,C1:C13),2,0)
E3&F3:將多條件合并
IF({1,0},A1:A13&B1:B13,C1:C13):利用if函數(shù)第一個參數(shù)的數(shù)組化特征,將多條件合并后的內(nèi)容與查詢的列結(jié)合起來,組成新的兩列數(shù)據(jù)。
注意:案例1如果兩列互換,所以是B在前A在后,這個案例不需要互換,所以AB在前,C在后
輸入公式結(jié)束后同時按Ctrl+Shift+Enter三鍵出來結(jié)果。
案例3:在合并單元格內(nèi)進行查找
雖然一再強調(diào),盡量避免在Excel中進行單元格合并,但是為了美觀,我們還是會遇到合并單元格的數(shù)據(jù)列表。
現(xiàn)需要根據(jù)左側(cè)單價和各產(chǎn)品類型各分公司銷售數(shù)量計算出總銷售額。
因為第二個表中“產(chǎn)品類型”被設(shè)置成了合并單元格,除了每個合并區(qū)域的第一個單元格有數(shù)值外,其余均為空,因此無法直接在單價表中查找對應(yīng)品種的單價,所以首先要使用公式填充合并單元格中的空單元格。
公式=LOOKUP("座",D$2:D2)
LOOKUP函數(shù)的特殊用法,在以D2單元格開始不斷向下擴大范圍的單元格區(qū)域中查找“座”字,當(dāng)LOOKUP函數(shù)找不到“座”字時,則返回區(qū)域中最后一個非空單元格名稱,即對應(yīng)的產(chǎn)品類型。
解釋:由于LOOKUP查找漢字是按照漢語拼音的順序來查找的,座(拼音zuo)是拼音中的最后一個,所以用“座”可以查找區(qū)域中最后一個單元格內(nèi)容,同理,換為其它字符代碼較大的漢字也可以查找。
再用VLOOKUP函數(shù)查找出產(chǎn)品的單價,與銷售量相乘,即得到總銷售額。
最終的公式=VLOOKUP(LOOKUP("座",D$2:D2),$A$2:$B$6,2,0)*F2
好啦,今天的教程就到這里啦,相信有了這篇文章,大家都能搞定VLOOKUP這個迷人的小妖精了。
這年頭,很多人覺得技能學(xué)習(xí)是最低級投資回報率是最低的,可是我卻覺得不管在哪一行,技能學(xué)習(xí)都是初入職場的必修課。