Vlookup函數(shù)—Excel中使用頻率最高的函數(shù),沒有之一。 Vlookup函數(shù),這個(gè)工作中最常用的函數(shù),當(dāng)之無愧的Excel查找函數(shù)之王。 其實(shí)很少有人能夠敢說自己精通Vlookup函數(shù)。 本文整理了Vlookup函數(shù)從入門到高級(jí)的全系列教程,并且加入了許多最新用法,強(qiáng)烈建議收藏備用! 本文由蘭色幻想-趙志東大神歸納整理,包含以下內(nèi)容:
一、基本語法 二、入門篇 三、進(jìn)階篇 四、高級(jí)篇 五、新版本中的最新用法 =Vlookup(查找的值,查找區(qū)域或數(shù)組,返回值所在的列數(shù),精確or匹配查找)- 查找區(qū)域或數(shù)組:包含查找值字段和返回值的單元格區(qū)域或數(shù)組
- 返回值的在列數(shù):返回值在查找區(qū)域的列數(shù)
- 精確or匹配查找:值為0或False為精確查找,值為1或true時(shí)匹配查找。
注: - B:E:是查找區(qū)域。因?yàn)橐檎业男彰诘?列,所以區(qū)域也要從B列開始。
2、查找不到時(shí)返回空
=IFERROR(VLOOKUP(G2,B:E,4,0),'') 注:IFERROR函數(shù)可以把錯(cuò)誤值轉(zhuǎn)換為指定的值,本例公式中轉(zhuǎn)換為空 =VLOOKUP(G2,IF({1,0},B1:B8,A1:A8),2,0) 注:公式中用IF({1,0} 把B列和A列組合在一起,并把 B列放在A列前面。 2、包含查找 【例】查找含“一”的姓名對(duì)應(yīng)的基本工資=VLOOKUP('*'&G2&'*',B:E,4,0) 注:查找值兩邊連接通配符*號(hào)可以實(shí)現(xiàn)包含查找 3、區(qū)間查找
【例】根據(jù)銷量查找對(duì)應(yīng)區(qū)間的提成: 注:當(dāng)最后一個(gè)參數(shù)為1或省略時(shí),可以實(shí)現(xiàn)匹配或區(qū)間查找。規(guī)則是查找比被查找值小且最接近的值,并返回對(duì)應(yīng)N列(第3個(gè)參數(shù))的結(jié)果。如下圖所示查找180,在A列查找比180且最接近的值是100,返回100對(duì)應(yīng)的提成3%。4、含通配符的查找
【例】根據(jù)型號(hào)查找單價(jià)
=VLOOKUP(SUBSTITUTE(D2,'*','~*'),A:B,2,0) 注:把*用函數(shù)替換為~*后就可以正常查找了 5、橫向多列查找
=VLOOKUP($G2,$B:$E,COLUMN(B1),0) 注:用Column()函數(shù)生成動(dòng)態(tài)數(shù)字,作為Vlookup第3個(gè)參數(shù),一個(gè)公式向右復(fù)制即可查找全部 6、多區(qū)域查找 【例9】根據(jù)不同的表從不同的區(qū)域查詢=VLOOKUP(B2,IF(A2='銷售一部',A5:B9,D5:E9),2,0) 1、多條件查找
【例】根據(jù)部門和姓名查工資 =VLOOKUP(E2&F2,IF({1,0},A2:A8&B2:B8,C2:C8),2,0) 注:先把A列和B列連接在一起,再用IF({1,0} 把它和C列組合在一起構(gòu)成8行2列的數(shù)組,作為Vlookup的第2個(gè)參數(shù) 2、合并單元格查找
=VLOOKUP(VLOOKUP('座',D$2:D2,1),A:B,2,0) 注:VLOOKUP('座',D$2:D2,1)可以返回D列截止本行的最后一個(gè)非空值。 3、合并單元格查找 【例】根據(jù)公司、產(chǎn)品查找對(duì)應(yīng)價(jià)格=VLOOKUP(F2,OFFSET(B$1,MATCH(E2,A:A,)-1,):C99,2,0) 注:用Match查找出部門所在行數(shù),然后用offset函數(shù)向下偏移B1,進(jìn)爾和C99構(gòu)成一個(gè)動(dòng)態(tài)的區(qū)域。更簡(jiǎn)單的說就是部門在哪一行,我就用Vlookup從哪一行開始向下找。4、一對(duì)多查找 【例】查找出人事部所有員工
數(shù)組公式輸入完成后按Ctrl+Shift+Enter結(jié)束后自動(dòng)添加大括號(hào) {=VLOOKUP(E$2&ROW(A1),IF({1,0},A$2:A$8&COUNTIF(INDIRECT('a2:a'&ROW($2:$8)),E$2),B$2:B$8),2,0)}
- ROW($2:$8)) :生成2,3,4,5,6,7,8
- INDIRECT('a2:a'&row : 生成行數(shù)逐漸增多的7個(gè)區(qū)域
- COUNTIF(INDIRECT : 在7個(gè)區(qū)域中分別計(jì)算部門的個(gè)數(shù),相當(dāng)于給人事部生成編號(hào)
- IF({1,0} : 把帶編號(hào)的部門和B列構(gòu)成7行兩列的新數(shù)組
5、查找所有值放在一個(gè)單元格 【例】在G列設(shè)置公式,根據(jù)F列產(chǎn)品從左表中查找所有符合條件的價(jià)格并用逗號(hào)隔開。
E2=D2&','&IFERROR(VLOOKUP(C2,C3:E$12,3,),'') G2=VLOOKUP(F2,C:E,3,)
6、查找最后一個(gè) 【例】查找A產(chǎn)品最后一次進(jìn)貨價(jià)格=VLOOKUP(1,IF({100,0},0/(B2:B10='A'),C2:C10),2) 注:Vlookup最后一個(gè)參數(shù)省略時(shí),可以像Lookup進(jìn)行二分法查找,用0/(條件)把不符合條件的變成錯(cuò)誤值,符合條件的變成0,然后用一個(gè)足夠大的數(shù)查找。IF后蘭色故意把常見的1寫成100,想讓大家知道這個(gè)只要是非0的數(shù)字都可以。7、跨多表查找 【例】從各部門中查找員工的基本工資,在哪一個(gè)表中不一定。 方法1
=IFERROR(VLOOKUP(A2,服務(wù)!A:G,7,0),IFERROR(VLOOKUP(A2,人事!A:G,7,0),IFERROR(VLOOKUP(A2,綜合!A:G,7,0),IFERROR(VLOOKUP(A2,財(cái)務(wù)!A:G,7,0),IFERROR(VLOOKUP(A2,銷售!A:G,7,0),'無此人信息')))))
=VLOOKUP(A2,INDIRECT(LOOKUP(1,0/COUNTIF(INDIRECT({'銷售';'服務(wù)';'人事';'綜合';'財(cái)務(wù)'}&'!a:a'),A2),{'銷售';'服務(wù)';'人事';'綜合';'財(cái)務(wù)'})&'!a:g'),7,0) 1、批量查找 在最新的Office365版本,查找再多行只需要設(shè)置一個(gè)公式:2、多列查找
=VLOOKUP(A11,A1:E7,{2,3,5},0) 這篇Vlookup教程整理共耗時(shí)7個(gè)多小時(shí)!不敢說是全網(wǎng)最全的Vlookup函數(shù)教程,至少蘭色知道的Vlookup用法全在這兒了。注:本公眾號(hào)所載原創(chuàng)文章均為作者辛苦創(chuàng)作。處處留心皆學(xué)問,建議大家將這篇推文收藏,以備不時(shí)之需。
|