Excel裡面關於函式HLOOKUP和VLOOKUP的區別

時間 2022-02-01 19:13:24

1樓:探險家e瑞

hlookup用於在**或數值陣列的首行查詢指定的數值,並由此返回**或陣列當前列中指定行處的數值。

vlookup用於在**或數值陣列的首列查詢指定的數值,並由此返回**或陣列當前行中指定列處的數值。

當比較值位於資料表的首行,並且要查詢下面給定行中的資料時,請使用函式 hlookup。

當比較值位於要進行資料查詢的左邊一列時,請使用函式 vlookup。

語法形式為:

hlookup(lookup_value,table_array,row_index_num,range_lookup)

vlookup(lookup_value,table_array,col_index_num,range_lookup)

其中,lookup_value表示要查詢的值,它必須位於自定義查詢區域的最左列。lookup_value 可以為數值、引用或文字串。

table_array查詢的區域,用於查詢資料的區域,上面的查詢值必須位於這個區域的最左列。可以使用對區域或區域名稱的引用。?

row_index_num為 table_array 中待返回的匹配值的行序號。row_index_num 為 1 時,返回 table_array 第一行的數值,row_index_num 為 2 時,返回 table_array 第二行的數值,以此類推。

col_index_num為相對列號。最左列為1,其右邊一列為2,依此類推.

range_lookup為一邏輯值,指明函式 hlookup 查詢時是精確匹配,還是近似匹配。

下面詳細介紹一下vlookup函式的應用。

(1) 精確查詢--根據區域最左列的值,對其它列的資料進行精確的查詢?

示例:建立工資表與工資條

首先建立員工工資表

然後,根據工資表建立各個員工的工資條,此工資條為應用vlookup函式建立。以員工sandy(編號a001)的工資條建立為例說明。

第一步,拷貝標題欄

第二步,在編號處(a21)寫入a001

第三步,在姓名(b21)建立公式

=vlookup($a21,$a$3:$h$12,2,false)

語法解釋:在$a$3:$h$12範圍內(即工資表中)精確找出與a21單元格相符的行,並將該行中第二列的內容計入單元格中。

第四步,以此類推,在隨後的單元格中寫入相應的公式。

2) 近似的查詢--根據定義區域最左列的值,對其它列資料進行不精確值的查詢

示例:按照專案總額不同提取相應比例的獎金

第一步,建立一個專案總額與獎金比例的對照表,如圖6所示。專案總額的數字均為大於情況。即專案總額在0~5000元時,獎金比例為1%,以此類推。

第二步 假定某專案的專案總額為13000元,在b11格中輸入公式

=vlookup(a11,$a$4:$b$8,2,true)

即可求得具體的獎金比例為5%,如圖

2樓:

hlookup是橫向取數

vlookup是縱向取數

excel裡面關於函式hlookup和vlookup的區別

3樓:深圳市勵拓軟體****

excel中最常用的查詢函式是vlookup函式,與其相似的還有hlookup函式,唯一的區別就是vlookup函式是從一列資料中查詢而hlookup函式是從一行資料中查詢。在英文中vertical代表垂直(vlookup中v的意思);而horizontal代表水平(hlookup中h的意思),這樣可以加深對兩個函式的認識。

這兩個函式原理一樣,只不過查詢方向不一樣

hlookup是查詢行

vlookup是查詢列

excel中vlookup與lookup函式的區別與使用方法

4樓:次次次蛋黃米亞

一、區別:

1、vlookup的使用相對於lookup函式的使用要簡單些。

2、vlookup函式更常用。一般查詢的內容大多是精確查詢。lookup查詢的內容可以是一部分,但是vlookup的查詢內容一般是完全一致的內容。

3、vlookup函式的使用範圍是縱向查詢引用的函式。lookup函式橫向縱向都可以查詢。從函式的解釋可以知道,也就是隻能列查詢。

4、vlookup函式需要滿足查詢值在查詢範圍之前,lookup函式則不需要。

5、都可以精確查詢和模糊查詢,但是lookup的公式沒有區別,vloookup函式卻是有區別的。

二、vlookup函式使用方法:

1、如果我們要查詢下面小**各業務的總銷售量,並且業務人員數目又多的話,如果用篩選來查詢就比較麻煩,即可使用vlookup函式。

2、vlookup的公式就是:vlookup(a14,a15:e8,5,false)。最終就查到了銷售量了。

三、lookup函式使用方法:

1、開啟excel,然後新建一個excel文件,在上面輸入自己所需要的資料,或者開啟一個上面有自己需要查詢的資料的文件。

2、將滑鼠移動到自己想要得到結果的單元格中,然後在上面的輸入公式欄中輸入「=lookup(d3,b2:b7,a2:a7)」。

3、輸入完成之後,就按下「回車」鍵,就可以得到自己想要查詢的結果了。

5樓:一點設計演示

1如上圖:根據員工編號所在行的**,查詢姓名行對應的姓名,兩者是水平的關係,因此應該使用hlookup函式。

2與前一例不同,上圖右側部分是根據員工編號所在列的**,查詢姓名列對應的姓名,兩者是垂直的關係,因此應該使用vlookup函式。

3語法:

vlookup(lookup_value,table_array,col_index_num,range_lookup)

hlookup(lookup_value,table_array,row_index_num,range_lookup)

從語法上看,兩者的引數完全一樣,即:查詢值,所在的行或列,行或列的第幾個值,查詢型別

注意這裡的查詢型別:有true 和false 2種

如果為true 或省略,則返回精確匹配值或近似匹配值。也就是說,如果找不到精確匹配值,則返回小於 lookup_value 的最大數值,table_array 第一列中的值必須以升序排序;否則 vlookup 可能無法返回正確的值。

如果為 false,vlookup 將只尋找精確匹配值。在此情況下,table_array 第一列的值不需要排序。如果 table_array  第一列中有兩個或多個值與 lookup_value 匹配,則使用第一個找到的值。

如果找不到精確匹配值,則返回錯誤值 #n/a。

看以下例項說明:

4=vlookup(a12,a2:c10,2)

使用近似匹配搜尋 a 列中的值 1,在 a 列中找到小於等於 1 的最大值 0.946,然後返回同一行中 b 列的值。(2.17)

=vlookup(a13,a2:c10,3,true)

使用近似匹配搜尋 a 列中的值 1,在 a 列中找到小於等於 1 的最大值 0.946,然後返回同一行中 c 列的值。(100)

=vlookup(a14,a2:c10,3,false)

使用精確匹配在 a 列中搜尋值 0.7。因為 a 列中沒有精確匹配的值,所以返回一個錯誤值。(#n/a)

=vlookup(a15,a2:c10,2,true)

使用近似匹配在 a 列中搜尋值 0.1。因為 0.1 小於 a 列中最小的值,所以返回一個錯誤值。(#n/a)

=vlookup(a16,a2:c10,2,true)

使用近似匹配搜尋 a 列中的值 2,在 a 列中找到小於等於 2 的最大值 1.29,然後返回同一行中 b 列的值。(1.71)

5 hlookup函式的各項要求與vlookup一致,因此可以類推。

6樓:匿名使用者

lookup 函式可從單行或單列區域 (區域:工作表上的兩個或多個單元格。區域中的單元格可以相鄰或不相鄰。

)或者從一個陣列 (陣列:用於建立可生成多個結果或可對在行和列中排列的一組引數進行運算的單個公式。陣列區域共用一個公式;陣列常量是用作引數的一組常量。

)返回值。lookup 函式具有兩種語法形式:向量形式和陣列形式。

向量形式

如果 在單行區域或單列區域(稱為「向量」)中查詢值,然後返回第二個單行區域或單列區域中相同位置的值。 當要查詢的值列表較大或者值可能會隨時間而改變時,使用該向量形式。

陣列形式 在陣列的第一行或第一列中查詢指定的值,然後返回陣列的最後一行或最後一列中相同位置的值 當要查詢的值列表較小或者值在一段時間內保持不變時,使用該陣列形式。

vlookup 中的 v 參數列示垂直方向。vlookup(lookup_value,table_array,col_index_num,range_lookup)

lookup_value 為需要在**陣列 (陣列:用於建立可生成多個結果或可對在行和列中排列的一組引數進行運算的單個公式。陣列區域共用一個公式;陣列常量是用作引數的一組常量。

)第一列中查詢的數值。lookup_value 可以為數值或引用。若 lookup_value 小於 table_array 第一列中的最小值,vlookup 返回錯誤值 #n/a。

table_array 為兩列或多列資料。使用對區域或區域名稱的引用。table_array 第一列中的值是由 lookup_value 搜尋的值。

這些值可以是文字、數字或邏輯值。文字不區分大小寫。

col_index_num 為 table_array 中待返回的匹配值的列序號。col_index_num 為 1 時,返回 table_array 第一列中的數值;col_index_num 為 2,返回 table_array 第二列中的數值,以此類推。如果 col_index_num :

小於 1,vlookup 返回錯誤值 #value!。

大於 table_array 的列數,vlookup 返回錯誤值 #ref!。

range_lookup 為邏輯值,指定希望 vlookup 查詢精確的匹配值還是近似匹配值:

如果為 true 或省略,則返回精確匹配值或近似匹配值。也就是說,如果找不到精確匹配值,則返回小於 lookup_value 的最大數值。

table_array 第一列中的值必須以升序排序;否則 vlookup 可能無法返回正確的值。有關詳細資訊,請參閱排序資料。

如果為 false,vlookup 將只尋找精確匹配值。在此情況下,table_array 第一列的值不需要排序。如果 table_array 第一列中有兩個或多個值與 lookup_value 匹配,則使用第一個找到的值。

如果找不到精確匹配值,則返回錯誤值 #n/a。

Excel裡面關於函式HLOOKUP和VLOOKUP的區別

hlookup函式和vlookup函式都是根據指定區域值查詢對應值。hlookup函式返回的是 或陣列中指定行的所在列中的值 而vlookup函式返回的是 或陣列中指定列的所在行中的值。可以簡單的理解為hlookup是進行水平查詢時用,vlookup是進行垂直查詢用的。軟體工具 excel 2013...

關於excel函式用法,關於一個excel函式用法

第1個if不用說了吧?你應該能看懂。第2個if是判斷身份證號碼是不是15位和18位的。不是說是 錯誤 第3個if是判斷身份證號碼裡的日期段有沒有夾雜非數字的其他字元等。錯誤 第4個if是判斷身份證號碼裡的日期段是不是小於1905 01 01或大於當前日期的。最後排除上述錯誤後給出身份證號碼裡的日期。...

excel函式裡面加函式怎麼做,在excel裡面怎麼做“巨集”公式?

直接在a7裡面複製以下公式,if a6 600,a1 a2 a3 a4,120 葬花吃人 用if條件判斷公式即可 if a6 600,a1 a2 a3 a4,120 新浪河陽小子 看來你要的是兩層if判斷如何寫如公式的答案,為方便展示,我以數值在b列來編寫,在b7單元格公式 if b6 600,b1...