說起VLOOKUP函數(shù),想必用EXCEL的人都知道吧。這年頭,如果不會VLOOKUP函數(shù),豈不是該打屁屁? 在一個(gè)數(shù)據(jù)量比較大的工作表中,如果想要找到符合某些特征的記錄,通常都會想到采用篩選的方式實(shí)現(xiàn)。但如果需要查找的是某一條記錄的話,用查找引用類函數(shù)就會更為方便。這次,就為各位介紹常用的查找引用類函數(shù)——VLOOKUP的使用方法。 VLOOKUP中的V是Vertical的縮寫,從單詞本身可知,這是一個(gè)垂直進(jìn)行查找的函數(shù),也可以理解為在一列數(shù)據(jù)里面找東西的函數(shù)。 可以采用這樣一種簡單的方法先記住Vlookup函數(shù)的參數(shù)。
要注意的是:其中需要找的內(nèi)容一定是在數(shù)據(jù)表的最左列,查找結(jié)果要精確的話,第四個(gè)參數(shù)要寫False或是0。 說到這里,不得不吐槽一下微軟了。 看圖: 關(guān)于第4參數(shù),說明和事實(shí)嚴(yán)重不相符啊。 接下來用示例來進(jìn)一步說明VLOOKUP函數(shù)的用法。下圖為某公司的員工信息表,有N多行數(shù)據(jù),需要找出某員工的詳細(xì)記錄。 (一)查找姓名為天竺僧的所在部門信息 將需要查找的姓名記錄在單元格F5中,然后在G5中寫公式:
由于員工部門對于員工信息表在第2列(以姓名所在列為1,向右數(shù)),故第三個(gè)參數(shù)為2。 因?yàn)槲覀兿胍_的找到天竺僧的部門,即第四個(gè)參數(shù)采用精確查找的查找方式,所以需要寫為False,而在Excel中,F(xiàn)alse的邏輯值為0,因此可以簡寫為0。 采用上述的公式,我們就很容易的查到天竺僧是的部門是生產(chǎn)部。 如果需要了解該員工的詳細(xì)記錄的話,可以繼續(xù)在其他單元格里書寫公式,當(dāng)然第三個(gè)參數(shù)會有變化,比如職務(wù)在第3列就應(yīng)該寫成3。 那如果想更輕松的去書寫公式,有沒有更好的方法呢?回答是肯定的,只要找到一種能幫我們自動返回列序號的函數(shù)就可以了。下面的例子將詳細(xì)說明。 (二)查找姓名為天竺僧的全部資料
從表中知道,我們需要了解姓名為天竺僧的部門和職務(wù)兩種信息。為了簡化公式,就是說寫好一個(gè)公式后用復(fù)制的方法快速把其他公式寫完,我們就采用COLUMN函數(shù)幫我們來數(shù)Vlookup的第三個(gè)參數(shù)——列序號。 COLUMN函數(shù)可以返回指定單元格的列號。公式中使用了COLUMN(B1),計(jì)算結(jié)果就是B1單元格的列號2。COLUMN函數(shù)的參數(shù)使用了相對引用,向右復(fù)制的時(shí)候,就會變成COLUMN(C1),計(jì)算結(jié)果就是C1單元格的列號3,這樣就給了VLOOKUP函數(shù)一個(gè)動態(tài)的第三參數(shù)。 最后,將COLUMN函數(shù)與VLOOKUP拼合在一起,變成公式:
再把公式復(fù)制到其他單元格,就可以很容易的查找到該員工的全部資料了。 另外,在使用VLOOKUP函數(shù)的時(shí)候,如果第四個(gè)參數(shù)是TRUE,要求數(shù)據(jù)表的首列必須按升序排列,否則就會出現(xiàn)計(jì)算錯(cuò)誤,如果第四個(gè)參數(shù)是FALSE,則不用考慮數(shù)據(jù)表的升降序順序。 在工作中常常會出現(xiàn)重復(fù)記錄的情況,可以通過一些技術(shù)手段來限制或規(guī)避,但像重名這類問題恐怕難以避免。 那遇到重名怎么辦?由于VLOOKUP函數(shù)的第一個(gè)參數(shù)要求必須是唯一的,不然返回的只能是第一次遇到的記錄,因此解決這類問題的方法就變成尋找唯一值。 可以借助輔助列的方式,加上行號或是工號等信息,將兩列數(shù)據(jù)合并成一個(gè)新的輔助列,放在原數(shù)據(jù)表的最左邊,接下來問題就迎刃而解了。 VLOOKUP函數(shù)的第一參數(shù)可以使用通配符,如下圖中,F(xiàn)5單元格給出了姓氏,G5就可以根據(jù)姓氏查找到數(shù)據(jù)表中第一條符合這個(gè)姓氏的信息。
這樣咋一看,咱們可能覺得VLOOKUP函數(shù)的第一參數(shù)還是挺隨和的。 那是不是真的像咱們想的那樣呢?一起看下圖: F5單元格是員工的工號,G5單元格使用以下公式用于返回該工號的部門信息:
咱們看公式本身是沒有問題的,但是卻返回了一個(gè)錯(cuò)誤值,這是什么原因呢? 看出問題來了吧?需要查找的值和數(shù)據(jù)表中的格式一個(gè)是文本一個(gè)常規(guī),VLOOKUP函數(shù)較真兒了:不一樣,就是不一樣。 最后咱們來做一下總結(jié): VLOOKUP函數(shù)查找值支持使用通配符('?'號和'*'號)進(jìn)行查詢,但查找值不能使用數(shù)組作為參數(shù)來生成內(nèi)存數(shù)組。 第4個(gè)參數(shù)(range_lookup)決定了查找方式。如果為0(或FASLE),用精確匹配方式進(jìn)行查找,而且支持無序查找;如果為1(或TRUE),則使用模糊匹配方式進(jìn)行查找,要求第2個(gè)參數(shù)的首列或首行按升序排列。 第3個(gè)參數(shù)中的列號,不能理解為工作表中實(shí)際的列號,而是指定返回值在查找范圍中的第幾列。 如果查找值與數(shù)據(jù)區(qū)域關(guān)鍵字的數(shù)據(jù)類型不一致,會返回錯(cuò)誤值#N/A。 如果有多條滿足條件的記錄時(shí),只能返回第一個(gè)滿足條件的記錄。 圖文制作:祝洪忠 |
|