黃嘉
(湖南鐵道職業技術學院,湖南 株洲 412001)
在進行Excel 數據查找時,大部分非專業人士會使用最原始的手工方法依次對應查找,工作效率低且容易出錯。VLOOKUP 函數是Excel 軟件中的王牌查找函數,意思是“垂直查找”。VLOOKUP 函數主要功能是在Excel表中按列查找【1】。在Excel數據表里查找數據時,如果數據表的面積非常大,要查找的數據特別多,列數多,行數多,可以利用VLOOKUP 函數進行快速查找數據。先理解VLOOKUP函數參數對話框中參數填寫,然后借助成績查找的案例,說明多列批量查找和多列動態查找的區別,弄清楚單列查找和多列查找的具體操作方法。
圖1 方陣,相當于單元格區域。黑色圓是待檢索對象。

圖1 方陣
圖2 VLOOKUP函數參數對話框,參數解釋如下:

圖2 VLOOKUP函數參數對話框
第1 個參數Lookup_value,為首列滿足條件的元素,即第一列中查找的對象,在第1列里找什么,例如,圖1第一列中灰色圓。
第2個參數Table_array,為在哪個區域里找。
第3個參數Col_index_num,為待檢索對象的列序號,即查找數據的數據列序號,例如,圖1黑色圓的列序號。在第一列里找到灰色圓以后,然后去找灰色圓所在行的第幾列,所以在這個參數當中要填寫第幾列。黑色圓在第5列,要找第5列,所以第3個參數當中就填寫“5”。
最后一個參數Range_lookup,指明查找時是精確查找還是模糊查找。
使用VLOOKUP 函數進行單列查找,如圖3所示。在表1 學生成績表中查找學號202210001、202210008、202210011 學生的信息技術成績,在表2中填入查找結果。

圖3 單列查找
首先查找學號202210001 學生的信息技術成績。對于新手強烈建議在函數參數對話框里填寫。在表2中單擊I3單元格,單擊fx插入函數,搜索VLOOKUP函數,選擇VLOOKUP 函數,在VLOOKUP 函數參數對話框中填寫函數參數,4個參數填寫如圖4所示。第1個參數是表1第1列中查找對象“202210001”,鼠標選擇“H3”單元格,H3單元格的內容是“202210001”。單元格地址H3 是相對引用。單元格地址H3 有兩部分組成:字母H表示列號,數字3表示行號。當向下復制填充函數,單元格地址的行號遞增。例如從I3單元格復制填充函數到I4 單元格,這個參數將自動從H3 變為H4。第2個參數填查找區域,查找區域是表1的Excel表格數據區域“A3:F14”,鼠標選擇“A3:F14”。鼠標選中“A3:F14”,同時按Fn鍵和F4鍵,在列號和行號前加$符號,使用絕對引用鎖定查找區域,第2 個參數是“$A$3:$F$14”。當復制填充函數的時候第2 個參數不變。

圖4 VLOOKUP函數參數填寫
VLOOKUP 函數第2 個參數使用了絕對引用。單元格地址有兩部分組成:字母部分表示列號,數字部分表示行號。$符號表示絕對引用,字母前面加$表示絕對引用列,數字前加$表示絕對引用行,2個都加$即表示絕對引用該單元格【2】,例如$A$3表示總是在指定位置引用單元格A3。單元格區域的絕對引用,例如$A$3:$F$14 表示總是在指定位置引用單元格區域A3:F14。如果函數所在單元格的位置改變,絕對引用的單元格區域始終保持不變。如果多行或多列地復制函數,絕對引用將不作調整。例如,將單元格I3 中的絕對引用復制到單元格I4,則在兩個單元格中一樣,都是“$A$3:$F$14”。
VLOOKUP 函數第1 個參數使用了相對引用。函數中的相對單元格引用(例如VLOOKUP 函數第1 個參數H3)是基于包含函數和單元格引用的單元格的相對位置。如果函數所在單元格的位置改變,引用也隨之改變。如果多行或多列地復制函數,引用會自動調整【3】。默認情況下,新函數使用相對引用。在某一列中向下復制填充函數,相對引用單元格地址的行號遞增,相對引用單元格地址的列號不變。例如,將單元格I3 中VLOOKUP 函數的相對引用H3 復制到單元格I4,VLOOKUP 函數第1 個參數將自動從H3 調整到H4。
第3 個參數填查找數據的數據列序號,信息技術成績的在表1 的列序號是“6”,所以第3 個參數填寫“6”。第4個參數,指明是精確查找還是模糊查找。如果需要精確查找,也就是要精確匹配學號202210001學生的信息技術成績,就在第4 個參數填“FALSE”或者“0”。如果是模糊查找,就在第4 個參數填上“TRUE”或者“1”或者省略。一般情況下,是精確查找,第4 個參數填上“0”。這樣就查找到了學號202210001 學生的信息技術成績:85。鼠標移向I3 單元格的右下角,鼠標指針變成+字形時,按住鼠標左鍵垂直往下拖動鼠標,拖到I5 單元格時松開鼠標左鍵,復制填充VLOOKUP 函數,查找到學號202210008、202210011學生的信息技術成績。
多列查找分為多列批量查找和多列動態查找。
使用VLOOKUP 函數進行多列批量查找,如圖5所示:在表1 學生成績表中查找學號202210001、202210008、202210011 學生的姓名、英語、數學、就業指導、信息技術成績,在表2中填入查找結果。

圖5 多列批量查找
多列批量查找的特點:查找結果的列名順序和查找區域的列名順序相同。例如,查找結果表2的列名順序是學號、姓名、英語、數學、就業指導、信息技術成績,查找區域表1的列名順序也是學號、姓名、英語、數學、就業指導、信息技術成績。使用VLOOKUP函數多列批量查找可以結合COLUMN函數的使用。
首先查找學號202210001學生的姓名。在表2中單擊I3 單元格,在VLOOKUP 函數參數對話框中填寫函數參數,參數填寫如圖6所示。第1個參數是第1列中查找對象“202210001”,第1 個參數填“H3”。為了向右水平復制填充函數的時候,第1個參數的單元格地址固定在H列,絕對引用列:H前面加$符號。為了向下復制填充函數的時候,第1個參數的單元格地址的行號遞增,相對引用行。所以第1個參數是“$H3“。第2個參數填在哪個區域里找,填“$A$3:$F$14”。

圖6 VLOOKUP函數參數填寫
第3 個參數填查找數據的數據列序號,表1 中姓名(B2 單元格)的列序號是“COLUMN(B2)”。COLUMN(B2)函數返回B2單元格的列序號“2”。第3個參數用COLUMN(B2)表示,其目的是后面從I3 單元格水平拖動鼠標復制填充VLOOKUP函數到J3單元格、K3單元格、L3 單元格、M3 單元格時,第3 個參數對應變為“COLUMN(C2)、COLUMN(D2)、COLUMN(E2)、COLUMN(F2)”,對應英語(C2 單元格)、數學(D2 單元格)、就業指導(E2 單元格)、信息技術(F2 單元格)的列序號“3”“4”“5”“6”。
第4個參數填上“0”,精確查找。這樣就查找到了學號202210001學生的姓名:張三。
鼠標移向I3單元格的右下角,鼠標指針變成+字形時,按住鼠標左鍵向右水平拖動鼠標,拖動到M3單元格時松開鼠標左鍵,復制填充VLOOKUP函數,查找到學號202210001 學生的英語、數學、就業指導、信息技術成績分別是:78、89、84、85。鼠標選中區域I3:M3,鼠標移向M3 單元格的右下角,鼠標指針變成+字形時,按住鼠標左鍵垂直往下拖動鼠標,拖動到M5單元格時松開鼠標左鍵,復制填充VLOOKUP函數,完成查找。
使用VLOOKUP 函數進行多列動態查找,如圖7所示:在表1 學生成績表中查找學號202210001、202210008、202210011 學生的姓名、信息技術、數學、英語、就業指導成績,在表2中填入查找結果。

圖7 多列動態查找
多列動態查找的特點:查找結果的列名順序和查找區域的列名順序不同。例如,查找結果表2的列名順序是學號、姓名、信息技術、數學、英語、就業指導成績,查找區域表1 的列名順序是學號、姓名、英語、數學、就業指導、信息技術成績。使用VLOOKUP函數多列動態查找可以結合MATCH函數的使用,MATCH函數返回指定數值在指定數組區域中的位置【4】。
首先查找學號202210001學生的姓名。在表2中單擊I3 單元格,在VLOOKUP 函數參數對話框中填寫函數參數,參數填寫如圖8所示。第1個參數是第1列中查找對象“202210001”,第1 個參數填“$H3“。第2個參數填在哪個區域里找,填“$A$3:$F$14”。

圖8 VLOOKUP函數參數填寫
第3 個參數填查找數據的數據列序號,第3 個參數填寫“MATCH(I$2,$A$2:$F$2,0)”。MATCH(I$2,$A$2:$F$2,0)函數返回I2單元格”姓名”在A2:F2區域的相對位置“2”。
第3 個參數用MATCH 函數表示,其目的是為了從I3 單元格水平拖動鼠標復制填充VLOOKUP 函數到J3 單元格、K3 單元格、L3 單元格、M3 單元格時,VLOOKUP第3個參數對應變為“MATCH(J$2,$A$2:$F$2,0)、MATCH(K$2,$A$2:$F$2,0)、MATCH(L$2,$A$2:$F$2,0)、MATCH(M$2,$A$2:$F$2,0)”,對應信息技術(J2單元格)、數學(K2單元格)、英語(L2單元格)和就業指導(M2 單元格)在A2:F2 區域的相對位置“6”“4”“3”“5”。為了向下垂直復制填充函數的時候,MATCH函數第1個參數不變,絕對引用行:I$2的2前面加$符號。MATCH 函數第3 個參數“0”,表示精確匹配。
VLOOKUP 函數第4 個參數填上“0”,精確查找。這樣就查找到了學號202210001學生的姓名:張三。
鼠標移向I3單元格的右下角,鼠標指針變成+字形時,按住鼠標左鍵向右水平拖動鼠標,拖動到M3單元格時松開鼠標左鍵,復制填充VLOOKUP函數,查找到學號202210001學生的姓名、信息技術、數學、英語、就業指導成績分別是:85、89、78、84。鼠標選中區域I3:M3,鼠標移向M3 單元格的右下角,鼠標指針變成+字形時,按住鼠標左鍵垂直往下拖動鼠標,拖動到M5 單元格時松開鼠標左鍵,復制填充VLOOKUP 函數,完成查找。
此文說明的僅僅是VLOOKUP 函數的單列查找、VLOOKUP 函數與COLUMN 函數結合應用的多列批量查找、VLOOKUP函數與MATCH函數結合應用的多列動態查找,VLOOKUP 函數還有許多用法,例如VLOOKUP 函數與IF函數結合應用查詢[5]、VLOOKUP函數“一對多”查詢[6]以及VLOOKUP 函數跨多表查詢[7]等。