關於VLOOKUP函數的用法
“Lookup”的漢語意思是“查找”,在Excel中與“Lookup”相關的函數有三個:VLOOKUP、HLOOKUO和LOOKUP。下面介紹VLOOKUP函數的用法。
一、功能
在表格的首列查找指定的數據,並返回指定的數據所在行中的指定列處的數據。
二、語法
標准格式:
VLOOKUP(lookup_value,table_array,col_index_num , range_lookup)
解釋:
VLOOKUP(‘你要檢索的內容或指定單元格’,‘你要檢索的范圍,檢索到內容時返回你檢索表的第幾列中的內容’, ‘真或假參數真代表查詢的表已經排序,假代表沒有排序’)
例:VLOOKUP(A2,Sheet2!$A1:$B10,2,FALSE)
說 明:在表SHEET2中檢索當前表中A2中的內容,如果檢索到,就返回表SHEET2中B2中的內容,因為B2是表SHEET2中的第二列,所以 VLOOKUP的第三個參數,使用2,表示如果滿足條件,就返回查詢表的第二列,最后的參數FALSE表示‘假’,意思是被查詢的表,沒有排序,這種情況 下,會從被查詢的表中第一行開始,一直查詢到結束。
三、語法解釋
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)可以寫為:
VLOOKUP(需在第一列中查找的數據,需要在其中查找數據的數據表,需返回某列值的列號,邏輯值True或False)
1.Lookup_value為“需在數據表第一列中查找的數據”,可以是數值、文本字符串或引用。
2.Table_array 為“需要在其中查找數據的數據表”,可以使用單元格區域或區域名稱等。
⑴如果 range_lookup 為 TRUE或省略,則 table_array 的第一列中的數值必須按升序排列,否則,函數 VLOOKUP 不能返回正確的數值。
如果 range_lookup 為 FALSE,table_array 不必進行排序。
⑵Table_array 的第一列中的數值可以為文本、數字或邏輯值。若為文本時,不區分文本的大小寫。
3.Col_index_num 為table_array 中待返回的匹配值的列序號。
Col_index_num 為 1 時,返回 table_array 第一列中的數值;
Col_index_num 為 2 時,返回 table_array 第二列中的數值,以此類推。
如果Col_index_num 小於 1,函數 VLOOKUP 返回錯誤值 #VALUE!;
如果Col_index_num 大於 table_array 的列數,函數 VLOOKUP 返回錯誤值 #REF!。
4.Range_lookup 為一邏輯值,指明函數 VLOOKUP 返回時是精確匹配還是近似匹配。如果為 TRUE 或省略,則返回近似匹配值,也就是說,如果找不到精確匹配值,則返回小於lookup_value 的最大數值;如果 range_value 為 FALSE,函數 VLOOKUP 將返回精確匹配值。如果找不到,則返回錯誤值 #N/A。
四、應用例子
A B C D
1 編號 姓名 工資 科室
2 2005001 周傑倫 2870 辦公室
3 2005002 蕭亞軒 2750 人事科
4 2005006 鄭智化 2680 供應科
5 2005010 屠洪剛 2980 銷售科
6 2005019 孫楠 2530 財務科
7 2005036 孟庭葦 2200 工 會
A列已排序(第四個參數缺省或用TRUE)
VLOOKUP(2005001,A1:D7,2,TRUE) 等於“周傑倫”
VLOOKUP(2005001,A1:D7,3,TRUE) 等於“2870”
VLOOKUP(2005001,A1:D7,4,TRUE) 等於“辦公室”
VLOOKUP(2005019,A1:D7,2,TRUE) 等於“孫楠”
VLOOKUP(2005036,A1:D7,3,TRUE) 等於“2200”
VLOOKUP(2005036,A1:D7,4,TRUE) 等於“工 會”
VLOOKUP(2005036,A1:D7,4) 等於“工 會”
若A列沒有排序,要得出正確的結果,第四個參數必須用FALAE
VLOOKUP(2005001,A1:D7,2,FALSE) 等於“周傑倫”
VLOOKUP(2005001,A1:D7,3,FALSE) 等於“2870”
VLOOKUP(2005001,A1:D7,4,FALSE) 等於“辦公室”
VLOOKUP(2005019,A1:D7,2,FALSE) 等於“孫楠”
VLOOKUP(2005036,A1:D7,3,FALSE) 等於“2200”
VLOOKUP(2005036,A1:D7,4,FALSE) 等於“工 會”
五、關於TRUE和FALSE的應用
先舉個例子,假如讓你在數萬條記錄的表格中查找給定編號的某個人,假如編號已按由小到大的順序排序,你會很輕松地找到這個人;假如編號沒有排序,你只好從上到下一條一條地查找,很費事。
用VLOOKUP查找數據也是這樣,當第一列已排序,第四個參數用TRUE(或確省),Excel會很輕松地找到數據,效率較高。當第一列沒有排序,第四 個參數用FALSE,Excel會從上到下一條一條地查找,效率較低。
筆者覺得,若要精確查找數據,由於計算機運算速度很快,可省略排序操作,直接用第四個參數用FALSE即可。
=========================
Lookup和Vlookup有哪些區別?2009-11-17 14:18Excel查詢函數中,Lookup和Vlookup有哪些區別?它們在應用中應該如何把握?請看本文講解。
★Lookup——數與行列比
Lookup的工作職責是什么呢?用一個數與一行或一列數據依次進行比較,發現匹配的數值后,將另一組數據中對應的數值提取出來。
·工資稅率表:用數值比較
根據不同的工資進行不同的稅率計算是一個常見的應用。我們來看這張“工資稅率查詢”表(見圖1)。現在要在右側根據“收入”(F列),直接得到 對應的“稅率”(G列)。在計算第1個“稅率”時,輸入函數公式“=LOOKUP(F4,$B$3:$B$8,$D$3:$D$8)”,回車,便可得到 “36.00%”。
這個結果是怎么來的?用F4中的第1個收入數“$123,409”,與左側表的“收入最低”各檔數據(“$B$3:$B$8”)進行對比,雖然 “$123,409”在“收入最低”各檔數中沒有完全一致的數據與之匹配,但是會與其中小於它的最大數“$58,501”相匹配。這樣,同一行對應的 “36.00%”就提取出來了。
·圖書銷售表:用文本比較
Lookup函數的對比數還可以是文本。在這張圖書銷售查詢表中(見圖2),用下表輸入的“編號”(A15單元格)文本當作查詢數,與上表的 “編號”一列($A$3:$A$11)進行對比,查詢到了匹配的文本后,將“教材名稱”一列($B$3:$B$11)對應的數據提取出來。公式是 “=LOOKUP(A15,$A$3:$A$11,$B$3:$B$11)”。
★Vlookup——數與表格比
Lookup有一個大哥——Vlookup函數。兩兄弟有很多相似之處,但大哥本領更大。Vlookup用對比數與一個“表”進行對比,而不是Lookup函數的某1列或1行,並且Vlookup可以選擇采用精確查詢或是模糊查詢方式,而Lookup只有模糊查詢。
·模糊匹配
用Vlookup函數進行模糊查詢時,幾乎與Lookup的作用完全一致。我們用Vlookup函數來提取第1個例子中的工資稅率結果。函數公式為“=VLOOKUP(F4,$B$3:$D$8,3,TRUE)”。
在這個函數中,用第1個收入“$123,409”(F4單元格)當作對比數,用它與左側表(“$B$3:$D$8”)的第1列數進行對比,雖然 “$123,409”在“收入最低”各檔數中沒有完全一致的數據與之匹配,但是函數的最后一個參數是“TURE”(“TURE”就是模糊查詢),所以它會 與其中小於它的最大數“$58,501”相匹配。並將表中第3列(函數的第3個參數為“3”)對應的數據提取出來,所以結果同樣是“36.00%”。
·訂單明細表:精確匹配
有時候,我們需要精益求精。在下面這個“訂單明細表”(見圖3)中,最后一列“貨運費用”中的數據要通過“交貨方式”從左側“配送公司表”中進行匹配查詢。這是一個典型的精確查詢的例子,計算第1個數據的函數公式是“=VLOOKUP(H3,$B$2:$D$6,3,FALSE)”。
小提示:
把最后一個參數從“TRUE”變更成“FLASE”,就是精確匹配。而精確查詢,就是查詢數要與查詢表第1列中的數據完全一致才能匹配提取,否則結果返回錯誤值“#N/A”。
點評:
Excel為我們提供了近20個有關“查找和引用”的函數,除了最常用的Lookup、Vlookup,還有Choos、Row、Colum、 Index和Match等,大家可以通過函數的幫助查看具體的功能。這些函數往往不是單獨使用,可以與其他函數和Excel中的一些功能進行配合。
出處:http://hi.baidu.com/realvnc/item/a0a42e24a3316acba4275a29
=========================================================================
今天在百度知道的時候,看到旁邊有人問excel中條件查找vlookup的問題,有幾位高手都知道使用vlookup作答,可惜都是沒有經過測試,直接復制別人的答案,讓所有的讀者都無法實施,一頭霧水。今天我們詳細解答一下vlookup函數的實際應用問題:
問題:如下圖,已知表sheet1中的數據如下,如何在數據表二 sheet2 中如下引用:當A列學號隨機出現的時候,如何在B列顯示其對應的物理成績?
首先我們知道需要用到vlookup函數,那么先介紹一下使用 vlookup函數的幾個參數,vlookup是判斷引用數據的函數,它總共有四個參數,依次是:
1、判斷的條件
2、跟蹤數據的區域
3、返回第幾列的數據
4、是否精確匹配
根據以上參考,和上述在sheet2表的B列顯示問題的實際需求,在sheet2表的B2單元格輸入這個公式是:
=vlookup(a2,sheet1!$a$2:$f$100,6,true)
詳細說明一下,在此vlookup函數例子中各個參數的使用說明:
1、a2 是判斷的條件,也就是說sheet1表和sheet2表中學號相同者,即sheet2表a列對應的數據和sheet1表中學號列a列的數據相同方能引用;
2、sheet1!$a$2:$f$100 是數據跟蹤的區域,因為需要引用的數據在f列,所以跟蹤的區域至少在f列,sheet1!是不同表間引用所用的表名稱,和標志是表間引用的!符號,$是絕對引用(關於絕對引用可以參考這里),$a$2:$f$100 表明從A2到F100單元格的數據區域,如果數據區域不止100,那么可以直接使用A:F,這樣雖然方便但是有風險,因為如果sheet1表的下方還有其它數據,就有可能出現問題;
3、6 這是返回什么數的列數,如上圖的物理是第6列,所以應該是6,如果要求英語的數值,那么此處應該是5
4、是否絕對引用,如果是就輸入 true 如果是近似即可滿足條件 那么輸入false (近似值主要用於帶小數點的財務、運算等)
5、vlookup是垂直方向的判斷,如果是水平方向的判斷可使用Hlookup函數
結果如下圖:
不知道你是否已經會使用vlookup這個條件查找函數,如果你有興趣可以試試本例。與本例結合緊密的是excel數據引用,更多的excel可以參考這里。
原地址 http://www.utosee.com/post/vlookup.html
==============================================================
使用HLOOKUP函數進行水平查找
在一些企業,會根據員工的銷售獎金是根據業績而定的,業績越高獎金比例也就越高。根據這種情況,往往需要對業績數據根據獎金比例標准經行查詢並定位獎金比例,當員工數量較多時,人為查詢會比較困難,用HLOOKUP函數水平查找就可以實現。
HLOOKUP函數主要用於在表格或數值組的首行查找指定的數值(即在水平查找),並返回表格顯示當前列中指定行處的值。
方法/步驟
1
將兩個工作表放在同意工作薄內。
2
在業績表的選擇C2,輸入“=HLOOKUP(B2,獎金標准!$B$3:$E$4,2)”,按回車。
公式中B2表示要查找的值;
“獎金標准!$B$3:$E$4”表示在“獎金標准”工作表中的B3:E4區域中查找,加$是防止在向下填充公式時照成錯誤;如果搜索區域是在同一工作表中,直接在公式中輸入“$B$3:$E$4”即可;
“2”表示要顯示的數據為B3:E4區域中查找的值所在列的第2行的值。
整個公式表示:在“獎金標准”工作表中B3:E4區域的首行查找與B2近似匹配的值所在的列,並顯示該列第2行的值。
3
選擇C2單元格,點擊並拖動光標向下填充公式。填充后,C2列單元格區域都會根據公式顯示對應結果。
4
在業績表的選擇D2,輸入“=B2*C2”,按回車,計算出銷售獎金;
選擇D2單元格,點擊並拖動光標向下填充公式。
注意事項
使用HLOOKUP函數時,如果是查找近似匹配值,被搜索區域(例子中的B3:E4)的首行值以升序的順序排列,可以防止搜索錯誤
出處:http://jingyan.baidu.com/article/9158e0008bb1ffa254122885.html