小夥伴們好啊,今天和大家說說VLOOKUP函數的典型應用。
1、初識VLOOKUP函數
VLOOKUP 是在表格的首列查找指定的內容,並返回與之對應的其他列的值。
我們可以用一種簡單的方法先記住VLOOKUP函數的參數:
=VLOOKUP(要找的內容,查找區域,返回第幾列的內容,匹配方式)
要注意的是:其中需要找的內容一定是在數據表的最左列。
接下來用幾個示例來進一步說明VLOOKUP函數的用法。
下圖為某公司的員工信息表,有N多行數據,我們需要找出某員工的一些記錄。
2、查找指定姓名的部門信息
我們將需要查找的姓名記錄在單元格F3中,G3單元格公式為:
=VLOOKUP(F3,$B$1:$D$10,3,0)
以姓名所在列開始向右數,員工職務在第3列,故第三個參數為3。
因為我們想要精確的找到丘處機的職務,即第四個參數採用精確查找的查找方式,所以需要寫為FASLE,或者簡寫為0。
如果需要了解該員工的詳細記錄的話,可以繼續在其他單元格里寫公式,當然第三個參數會有變化,比如要查詢部門信息,就應該寫成2。
那如果想更輕鬆的去書寫公式,有沒有更好的方法呢?
回答是肯定的,只要找到一種能幫我們自動返回列序號的函數就可以了。
3、查找指定姓名的全部信息
現在,咱們需要分別查詢丘處機的部門和職務信息。
為了能夠在寫好一個公式後,用複製的方法快速把其他公式寫完,我們用COLUMN函數幫我們來數VLOOKUP的第三個參數——列序號:
=VLOOKUP($F3,$B$1:$D$10,COLUMN(B1),0)
COLUMN函數可以返回指定單元格的列號。
公式中使用了COLUMN(B1),計算結果就是B1單元格的列號2。
COLUMN函數的參數使用了相對引用,向右複製的時候,就會變成COLUMN(C1),計算結果就是C1單元格的列號3,這樣就給了VLOOKUP函數一個動態的第三參數。
最後,將COLUMN函數與VLOOKUP拼合在一起,再把公式複製到其他單元格,就可以很容易的查找到該員工的全部資料了。
4、查找模糊條件的信息
VLOOKUP函數的第一參數可以使用通配符。
如下圖中,F3單元格給出了部門關鍵字,G3就可以根據這個關鍵字查找到數據表中第一條符合這個條件的信息。
=VLOOKUP(F3&"*",C2:D10,2,0)
這樣咋一看,咱們可能覺得VLOOKUP函數的第一參數還是挺隨和的。那是不是真的像咱們想的那樣呢?
5、查找內容區分格式
一起看下圖:
F3單元格是員工的工號,G3單元格使用以下公式用於返回該工號的員工姓名:
=VLOOKUP(F3,A1:D10,2,0)
咱們看公式本身是沒有問題的,但是卻返回了一個錯誤值,這是什麼原因呢?
看出問題來了嗎?
需要查找的值和數據表中的格式一個是文本,一個是常規,格式不同就無法匹配了。
6、查找內容區分格式
前面咱們說的都是精確匹配,近似匹配方式在什麼情況下會用到呢?
近似匹配主要用於數值類的查詢,如下圖所示,A~C列是一些業務流水記錄。現在要統計出每個月最後一筆業務金額。
首先,在E3單元格輸入4月份的月末日期「4-30」,然後下拉,在填充選項中選擇「按月填充」。
接下來選中E3:E6,設置數字格式,自定義為「m月」。
在F3單元格輸入以下公式,下拉:
=VLOOKUP(E3,A:C,3)
VLOOKUP函數使用近似查詢時,要求查詢區域的首列必須是升序排序的,在找不到關鍵字「4-30」這個日期時,就以比這個日期小,並且與這個日期接近的記錄來進行匹配。這樣就找到每個月的最後一筆記錄了。
最後咱們來做一下總結:
VLOOKUP函數五個特點
1、VLOOKUP函數查找值支持使用通配符("?"號和"*"號)進行查詢,但查找值不能使用數組作為參數來生成內存數組。
2、第4個參數決定了是精確還是近似查找方式。
如果為0(或FASLE),用精確匹配方式進行查找,而且支持無序查找;如果為1(或TRUE),則使用近似匹配方式進行查找,要求第2個參數的首列或首行按升序排列。
3、第3個參數中的列號,不能理解為工作表中實際的列號,而是指定返回值在查找範圍中的第幾列。
4、如果查找值與數據區域關鍵字的數據類型不一致,會返回錯誤值#N/A。
5、如果有多條滿足條件的記錄時,只能返回第一個滿足條件的記錄。
好了,今天內容到此為止,祝各位小夥伴一天好心情!
圖文製作:祝洪忠