Excel中VLOOKUP函數掌握這8條,搞定所有查找引用
在使用Excel的過程中,我們經常需要從某些工作表中查詢有關的數據複製到另一個工作表中,而這幾個工作表中的數據的順序是不完成一樣的,並不能直接複製粘貼,這時候就需要用到查找函數。而查找函數中,用得最多的要數VLOOKUP,下面就詳細的來講解下VLOOKUP函數的用法。
1.根據QQ號查找昵稱
=VLOOKUP(D2,$A$2:$B$10,2,FALSE)
內功修鍊:
VLOOKUP語法為:=VLOOKUP(查找值,區域,區域中第N列,查找模式)。
查找模式:FALSE(0)代表精確查找,TRUE(1)代表模糊查找(省略也是模糊查找)。
2.屏蔽查找錯誤值
如上圖所示,當查找的值不存在時,會出現「#N/A」的錯誤值,這時候看起來很不美觀喲。那麼如何屏蔽掉「#N/A」呢?這時可以使用容錯函數IFERROR,如果是Excel 2013或以上版本,還可以使用IFNA,該函數專門用於處理「#N/A」錯誤。
=IFERROR(VLOOKUP(D3,$A$2:$B$10,2,FALSE),"") 或
=IFNA(VLOOKUP(D2,$A$2:$B$10,2,FALSE) ,"")
函數語法如下:
=IFERROR(表達式,錯誤值要顯示的結果)
=IFNA(表達式,錯誤值要顯示的結果)
說白了,這兩個函數就是將錯誤值顯示為你想要的結果,不是錯誤值就返回原來的值。
3.按順序返回多列對應值
如上圖所示,我們要返回兩列的數據,可以通過修改第三參數,返回各項的對應值:
=VLOOKUP(A16,$A$2:$G$13,2,0)
=VLOOKUP(A16,$A$2:$G$13,3,0)
如果項目比較少,更改幾次也沒什麼關係,但是如果當項目多時,卻會十分不方便。
這時可以使用ROW、COLUMN產生行列號,從而得到1、2、3、n的值。如:
=VLOOKUP($A16,$A$2:$G$13,COLUMN(),0)
4.按不同順序返回多列對應值
如上圖所示,COLUMN就派不上用場了,是不是只能手動更改第三個參數了呢?答案當然是否定的,我們要相信Excel的超能力,也許只是我們自己不知道或者一時想不到。Excel查找與引用函數裡面還有一個功能強大的MATCH函數,可以更改為:
=VLOOKUP($A16,$A$2:$G$13,MATCH(B$15,$A$1:$G$1,0),0)
MATCH函數的語法如下:
=MATCH(查找值,區域,排列順序),排列順序一共有三個值,1代表升序排列,0代表任意順序排列,-1代表降序排列,默認為1。
5.VLOOKUP逆向查找
VLOOKUP幫助中提到其只能按照首列進行查找,不能逆向查找,既然如此,就得想辦法將非首列的區域轉換為首列。如何轉換呢,這時就要使用IF函數的高級用法了,即數組函數,這裡不詳細講解,之後會有專門的專題講解。如下:
=IFNA(VLOOKUP(D2,IF({1,0},$B$2:$B$10,$A$2:$A$10),2,0),"")
6.VLOOKUP多條件查詢
同樣,VLOOKUP幫助中提到其只能進行單一條件查找,不能進行多條件查找。通過使用IF函數來重新構造區域,就可以實現多條件查詢。如要通過身份證和姓名兩個條件來查詢民族:
公式如下:
=IFNA(VLOOKUP(A16&B16,IF({1,0},$A$2:$A$13&$B$2:$B$13,$E$2:$E$13),2,0),"") ,最後需要按Ctrl+Shift+Enter組合鍵(數組公式)結束。
7.根據第一個字元查找
函數為:=VLOOKUP(D2&"*",A:B,2,0)。
說明:星號(*)是通配符,代表所有字元;問號(?)代表一個字元。
8.根據區間判斷成績等級
如圖,通過添加輔助列的方式可以很輕鬆的實現:
=VLOOKUP(E2,A:C,3)
如果不使用輔助列的話,需要結合多個函數來實現,下面給出公式,大家有興趣可以自行研究。
=VLOOKUP(E2,IF({1,0},--LEFT($B$2:$B$5,FIND("-",$B$2:$B$5)-1),$C$2:$C$5),2)
只要掌握了以上8條技巧,基本上所有的查詢問題都能解決了。
推薦閱讀:
※Excel函數公式一對多查詢的12種公式
※《EXCEL大講堂 函數》5個日期函數 再也不用看日曆數日子了
※Excel函數應用之數學和三角函數
※excel中sumif函數的幾種常見用法
※財務人員必懂得幾個Excel函數(三)