一、vlookup函數用途
Excel的vlookup用途很廣泛,最主要用法是把資料表做連結,依據的是兩個資料表中某個相同的欄位,透過vlookup做比對並且連結。
- 一對一的資料聯結 : 例如有一份資料是鄉鎮市區的人口資料,鄉鎮市區只有代碼;另一份資料是鄉鎮市區代碼和名稱對照表,需要將兩份資料合併才能把代碼、名稱、人口數都對應起來。不過這時候其實只要把兩邊資料用一樣排序就好
- 一對多/多對一的資料聯結 : vlookup最常見的用法就是要做這種資料聯結,例如會員資料中很多欄位都會以代碼代替,所以有一份資料可能是會員的居住地區(縣市、鄉鎮市區)代碼、年齡、性別等,另一份資料是地區代碼和中文對照表,需要將兩份資料表合併。
二、vlookup函數語法
vlookup會在table_array範圍中,依序比對第一欄是否有跟lookup_value一樣的資料值,有的話會回傳同一列第N個欄位的值( N = col_index_num )。
VLOOKUP( lookup_value , table_array , col_index_num , [range_lookup] ) lookup_value : 要被比對的欄位,也就是要拿來當關聯的資料欄位 table_array : 要對照的表格範圍,與lookup_value作比對的欄位一定要在表格範圍的第一欄(最左邊) col_index_num : 要填入的資料值在table_array表格範圍的第幾欄
* TRUE(大約符合) , FALSE(完全符合) :
雖然不在輸入參數裡,但是在輸入col_index_num之後,就會需要選擇,TRUE是指比對的欄位資料值大約符合就會算比對成功;通常這裡是選FALSE,比對的欄位資料值要完全相同才算比對成功。
三、vlookup函數範例
假設有兩張資料表,一張是會員資料(地區以代碼紀錄),另一張資料表是地區代碼和中文對照表,我們希望地區欄位旁邊可以直接標註中文名稱,因此需要將兩份資料表合併,如下圖所示,D欄是要被比對的欄位(地區代碼),I 跟 J 兩欄合成的表格則是地區代碼與中文名稱對照表 :
- 居住地代碼在D欄,這欄是要被比對的資料欄位,所以lookup_value參數輸入D2。
- table_array參數輸入$I$1:$J$23。資料表範圍是I 跟 J 兩欄合成的表格,這裡可以輸入 I : J;也可以指定確切範圍,但是指定確切範圍的話要記得用「$」符號指定固定範圍,不然在使用自動填入的時候會出錯。
- 地區中文名在I 跟 J 兩欄合成的表格裡是第2個欄位,col_index_num 參數輸入2。
- D 欄和 I 欄的地區代碼要完全一樣才算比對成功,因此要用FALSE(完全符合)。
=VLOOKUP(D2,$I$1:$J$23,2,FALSE)
接著就可以使用自動填滿,依序比對所有的欄位。自動填入可以參考【Excel】自動填入(1):2種常用的自動填入(複製方式、數列方式)和【Excel】自動填入(2):進階的自動填入使用
四、本文範例資料檔案下載
五、vlookup常見錯誤處理
【Excel】vlookup函數#N/A的常見原因和解決方法
更多的Excel應用,歡迎參考我的Excel教學系列。
小額支持鍾肯尼
如果我的文章有幫助到你,歡迎你點這裡開啟只要40元的小額贊助連結,可以贊助我一杯咖啡錢;我會更有動力繼續寫作,幫助大家解決更多問題。
感謝你! 真的超級有用!
謝謝:) 讓我更有動力繼續寫
感謝您專業的解說, 不過想要請問一下, 如果是要比對2個以上的條件, 來篩選, 請問Vlookup可以比對嗎?
可以把要比對的條件組合起來放在一個欄位中,再用vlookup