【摘要】
對(duì)于經(jīng)常使用Excel的人來(lái)說(shuō),對(duì)于Vlookup函數(shù)肯定不陌生。Vlookup函數(shù)經(jīng)常被我們用于數(shù)據(jù)的查找、對(duì)比,關(guān)于該函數(shù)我們很多人都會(huì)用,可是用的都是相對(duì)比較簡(jiǎn)單的功能,那么在本文中,我們對(duì)該函數(shù)做個(gè)非常詳細(xì)和深入的了解認(rèn)識(shí)。
【正文】
Vlookup函數(shù)是一個(gè)查找函數(shù),它是根據(jù)給定的一個(gè)查詢值,在指定的范圍中返回最后想要找到的那個(gè)值。它的基本語(yǔ)法為:
Vlookup(查詢值,查找范圍,顯示序列,匹配參數(shù))
我們以下方的實(shí)例為大家介紹以上四個(gè)參數(shù)的用法及注意事項(xiàng)。
一基本用法
我們希望根據(jù)學(xué)號(hào),找到對(duì)應(yīng)的姓名、語(yǔ)數(shù)英及總分的成績(jī)。
我們根據(jù)Vlookup函數(shù)的語(yǔ)法,在B9單元格輸入以下公式:=VLOOKUP($A$9,$A$1:$F$6,2,0)。參數(shù)說(shuō)明為:
查詢值:即為我們希望通過(guò)指定的查找內(nèi)容或單元格。在該例中我們希望通過(guò)A9單元格的學(xué)號(hào)“A001”去查找,所以A9單元格作為我們的查詢值。
查找范圍:
在使用vlookup函數(shù)的時(shí)候需要特別注意,查詢值必須為范圍的第一列。即我們是根據(jù)學(xué)號(hào)來(lái)查詢,所以在我們選擇范圍的時(shí)候?qū)W號(hào)要在該范圍的第一列,即從A列開始計(jì)算;
需要顯示的值也必須位于查找范圍中。即本例中的姓名也必須要在我們的范圍里,所以最后我們的范圍定位在A1到F6整個(gè)區(qū)域。
顯示序列:即需要顯示的值位于查找范圍的第幾列,而且該值必須為數(shù)字。我們最終希望返回的是姓名,姓名位于我們查找范圍A1到F6的第2列,所以在此輸入數(shù)字“2”
匹配參數(shù):該參數(shù)決定Vlookup函數(shù)是精確查詢還是模糊查詢,而且該匹配參數(shù)最好不要忽略。匹配參數(shù)分為以下兩種情況:
0、false——精確查詢
1、true——模糊查詢
隨后,關(guān)于語(yǔ)數(shù)英及總分的vlookup函數(shù)大家就可以自己完成了。
二進(jìn)階版
2.1返回多列結(jié)果
還是上面的Vlookup函數(shù),難道后面的語(yǔ)數(shù)英及總分的函數(shù)我需要一個(gè)個(gè)填寫嗎?這樣,似乎有點(diǎn)太累了。其實(shí),我們發(fā)現(xiàn),只需要在第一個(gè)Vlookup函數(shù)的基礎(chǔ)上,講“顯示序列”的值做變更,即可將公式往后復(fù)制計(jì)算結(jié)果。因此在這里我們?cè)偌尤胍粋€(gè)新的函數(shù)——Match。
函數(shù)語(yǔ)法為:match(查詢值,包含查詢值在內(nèi)的一行或一列,0)。該函數(shù)主要是返回指定的值在指定數(shù)組區(qū)域中的位置,也屬于查找函數(shù)之一。
因此,C9單元格的match函數(shù)寫法為:=MATCH(B$8,$A$1:$F$1,0)。我們需要通過(guò)B8單元格的“姓名”在A1到F1的行標(biāo)題上返回第幾個(gè)值,最后得到的結(jié)果是“2”,然后將該match函數(shù)嵌入到B9單元格中,即最后B9單元格的公式為:VLOOKUP($A$9,$A$1:$F$6,MATCH(B$8,$A$1:$F$1,0),0)
2.2多條件查詢
簡(jiǎn)單的Vlookup函數(shù)能實(shí)現(xiàn)單一條件查詢,但是如果像以下的例子,需要同時(shí)滿足兩個(gè)條件的是否可以借助Vlookup函數(shù)來(lái)完成呢?
在本例中,需要同時(shí)滿足“所在地區(qū)”和“企業(yè)名稱”兩個(gè)條件,那我們可以利用“&”連接符的,將這兩個(gè)條件合并為唯一條件,即變成如下的效果:
如此一來(lái),我們可以在H列輸入如下的vlookup函數(shù):=VLOOKUP(F2&G2,A:D,4,0)即可實(shí)現(xiàn)同時(shí)滿足兩個(gè)條件的查找。
2.3模糊查詢
一般情況下,我們使用vlookup來(lái)實(shí)現(xiàn)精確查詢,即返回一一對(duì)應(yīng)的唯一值,那vlookup函數(shù)還有另外一個(gè)非常常用的功能,及模糊查詢的功能。我們?cè)谝婚_始的基本用法中已經(jīng)跟大家說(shuō)了vlookup最后的匹配參數(shù)可以是精確查詢(0或者False),也可以是模糊查詢(1或者True)。那么在上面介紹的例子中已經(jīng)對(duì)精確查詢做了詳細(xì)介紹,那么在這一部分,我們將介紹模糊查詢的用法。
那在什么情況下,使用vlookup的模糊查詢呢?我們看看以下這個(gè)例子:
在本例中,我們需要根據(jù)每個(gè)訂單號(hào)的貨物金額找到對(duì)應(yīng)的優(yōu)惠折扣,最后計(jì)算折后價(jià)格。傳統(tǒng)的方法是通過(guò)多層嵌套的if函數(shù)來(lái)完成,可是if函數(shù)嵌套實(shí)在太麻煩了,而且很容易出現(xiàn),那么在這種情況下,我們就可以利用vlookup的模糊查詢功能來(lái)實(shí)現(xiàn)了。
使用Vlookup的模糊查詢的前提條件是:查詢范圍的第一列必須為升序排列。外加我們已經(jīng)知道做模糊查詢的時(shí)候最后的參數(shù)為1或者True,因此,在C2單元格我們就可以輸入以下函數(shù):=VLOOKUP(B2,$F$2:$G$8,2,1),即可快速的計(jì)算得到優(yōu)惠價(jià)格。
Vlookup函數(shù)的模糊查詢的規(guī)則是:按照查找范圍的第一列,并且是第一列中向下匹配最接近的那個(gè)值,返回對(duì)應(yīng)序列的結(jié)果。所以在這里,針對(duì)B2單元格的32380向下匹配,最接近的為20000,那么返回第二列的值即為5%。如此一來(lái),我們就可以利用簡(jiǎn)單的vlookup函數(shù)來(lái)替換多層嵌套的if函數(shù)了。
三高階版
3.1反向查找
一般情況下,Vlookup函數(shù)只能從左往右查找數(shù)據(jù),如果需要從右往左查找,我們一般需要把數(shù)據(jù)區(qū)域進(jìn)行移動(dòng),如以下的例子,希望通過(guò)姓名找到對(duì)應(yīng)的學(xué)號(hào):
在這里我們可以借助if函數(shù)的數(shù)組功能將A、B兩列的位置重新組合,然后再利用Vlookup函數(shù)從左往右查找。
我們?cè)贐9單元格輸入如下公式:=VLOOKUP(A9,IF({1,0},B2:B6,A2:A6),2,0)。在Excel中,1相當(dāng)于True,0相當(dāng)于False。所以當(dāng)1時(shí),它會(huì)返回if函數(shù)的第二個(gè)參數(shù)真值及B列,反之返回第三個(gè)參數(shù)即A列。然后再根據(jù)數(shù)組運(yùn)算返回的單元格區(qū)域?yàn)椋簕"張三","A001";"李四","A002";"王五","A003";"趙六","A004";"田七","A005"}。如此一來(lái)便可在這個(gè)新的區(qū)域中查找,然后返回第二列的值便可。
聯(lián)系客服