請解釋下這個excel函式(lookup)

2022-05-05 00:46:25 字數 4403 閱讀 3887

1樓:

這是lookup的向量型用法。

要弄明白上述公式,先看下面:

=lookup(3,,)

此公式,查詢目標3在陣列的位置是第二個,就對應返回這個陣列的第二個元素的值b

·lookup若找不到目標,就返回比目標小的最接近的值的位置。如

=lookup(7.5,,)

在陣列中沒有7.5,怎麼辦呢?它就把7.5當成陣列中的5(比7.5小的,有1、3、5,最接近的是5),5在陣列中是第三個位置,所以此公式返回c

弄明白上面兩條,再來看你的公式:

lookup(1,0/($a$1:a1<>""),row($a$1:a1))

下拉會變成

lookup(1,0/($a$1:a2<>""),row($a$1:a2))

lookup(1,0/($a$1:a3<>""),row($a$1:a3))

...........................

就最後一條:

其中,查詢目標是數字1

查詢陣列或區域是0/($a$1:a3<>"")

返回區域是row($a$1:a3)

查詢的陣列或區域0/($a$1:a3<>"")

$a$1:a3<>""根據a1、a2、a3是否為空,非空則真,空則假,得到三條真假值

0/真假值---------布林值參與運算時,真為1,假為0。於是相當於用1或0作被除數。0/1=1,0/0=錯誤

查詢的陣列或區域是一堆0和錯誤值

.lookup在查詢時,忽略錯誤值,所以只剩下一堆0可以比對

查詢目標是1,當然找不到。所以被當成0---因為計算結果中只有0可以比對。

.若有多個目標匹配,則lookup返回找到的最後一個匹配值0的位置

row($a$1:a3)---相當於數字序列1,2,3

根據最後一個匹配值0的位置,返回對應的結果。

該公式功能:返回a列區域,到當前行中最後一個非空單元格的行號!

2樓:萬年金剛鑽

先總體來說

lookup的三個引數,會在第二個引數列表中定位最後一個小於等於第一個引數的位置,然後返回第三個引數列表中形同位置的值

具體到你的這個例項

你的這個公式,$a$1:a1在下拉後,會變成$a$1:a2、$a$1:a3、、、

也就是:

在第二引數中

會判斷a列第一行開始逐漸往下的每個單元格是不是為空,不為空的會返回零,為空則返回!div0,這樣,lookup就會定位到最後一個0

而第三引數是行號,那麼,最後,每個lookup的返回值就是a列中上面的最後一個不為空的行號

至於是每個lookup分別返回的是哪一個單元格上面的最後一個,那要看你這個公式是放在哪個位置然後下拉的,因為公式是位置相關的,比如,你這個公式是在第10行的,那麼下拉到第11行時,判斷的就是a列的1、2行;下拉到第12行時,判斷的就是a列的第1、2、3行;以此類推

3樓:s今生緣

lookup是向後相容;

0/($a$1:a1<>""),從a1單元格向下,到所在行的a列單元格,不等於空值時,結果為0,等於空值結果為#div/0!(除數為false,按0算);

lookup(1,0/($a$1:a1<>""),row($a$1:a1)),是查詢1,返回最後1個不大於1的值所對應的查詢值,但這裡面只有0和#div/0!

,向後相容,返回最後一個是數值0所對應的行號。

公式的意思就是查詢a列最後一個非空單元格的行號。

4樓:匿名使用者

首先0/((sheet2!a:a=sheet1!a5)*(sheet2!b:b=sheet1!b5)

返回的是一組數列:如果同時滿足了2個條件就返回了0即0/1,不滿足則返回了#div/0!即0/0

其次,由於lookup函式的第2個引數只認升序,所以它在查詢的時候只會認最後的一個0,#div/0!,前面的會忽略掉而跳過

再而,查詢值1是介於0和#div/0!之間,返回的結果將是0所對應的值

最後,整個公式的結果就是得到最後一個0所對應的c列的值,即滿足條件的最後一個c列值

請幫我解釋下excel中關於lookup函式的這個公式是什麼意思?

5樓:螞蟻帝國

首先0/((sheet2!a:a=sheet1!a5)*(sheet2!b:b=sheet1!b5)

返回的是一組數列:如果同時滿足了2個條件就返回了0即0/1,不滿足則返回了#div/0!即0/0

其次,由於lookup函式的第2個引數只認升序,所以它在查詢的時候只會認最後的一個0,#div/0!,前面的會忽略掉而跳過

再而,查詢值1是介於0和#div/0!之間,返回的結果將是0所對應的值

最後,整個公式的結果就是得到最後一個0所對應的c列的值,即滿足條件的最後一個c列值

請解釋下這句excle公式 =if(a2="","",vlookup(a2,sheet2!$a$1:$c$3,2,false))

6樓:匿名使用者

如果a2單元格的內容是空的,本單元格就是空的,否則就是vlookup的返回值

vlookup縱向查詢函式,它與lookup函式和hlookup函式屬於一類函式,vlookup是按列查詢,最終返回該列所需查詢列序所對應的值;hlookup是按行查詢的。

該函式的語法規則如下:

vlookup(lookup_value,table_array,col_index_num,range_lookup)

引數 簡單說明 輸入資料型別

lookup_value 要查詢的值 數值、引用或文字字串

table_array 要查詢的區域 資料表區域

col_index_num 返回資料在區域的第幾列數 正整數

range_lookup 精確匹配 true(或不填) /false

lookup_value引數說明  lookup_value為需要在資料表第一列中進行查詢的數值。lookup_value 可以為數值、引用或文字字串。

table_array引數說明  table_array為需要在其中查詢資料的資料表。使用對區域或區域名稱的引用。

col_index_num引數說明  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!。

range_lookup引數說明  range_lookup為一邏輯值,指明函式 vlookup 查詢時是精確匹配,還是近似匹配。如果為false或省略 ,則返回近似匹配值。也就是說,如果找不到精確匹配值,則返回小於 lookup_value 的最大數值。

如果 range_lookup 為 true,函式 vlookup 將查詢精確匹配值,如果找不到,則返回錯誤值 #n/a。

7樓:匿名使用者

如果a2是空值,就返回空值,否則,就返回工作表sheet2的a1~c3區域內,以a2為條件查詢sheet2首列a列看看有沒有匹配值,如果有就返回首列起第2列的對應值,否則返回錯誤值。

(其中:邏輯值false——返回精確匹配值,如果找不到,則返回錯誤值 #n/a)

例如:a2是100(不是空值),sheet2的a3也是100,匹配,就返回a列起的第2列對應值即b3的資料。

8樓:匿名使用者

如果a2不為空,在sheet2表中的a2單元格、a1至c3區域的第2列查詢,若有對應行,則返回a1:中對應行的值

9樓:匿名使用者

countif(range,criteria) range 為需要計算其中滿足條件的單元格數目的單元格...下面的例子仔細琢磨一下,舉一反三,不難的。 c列為算出b列結果用的公式...

請解釋下lookup(i,{1,2,3},{0.85,1,1})中的i是什麼意思?

10樓:匿名使用者

i可能是自定義名稱,你可在名稱管理中看看。

也可能是筆誤,引用i列某一單元格的資料,少寫了行號。

excel的lookup函式在什麼請況下要分類?

解釋下這個EXCEL函式是什麼意思

lookup lookup value,lookup vector,result vector 當 lookup 的lookup value 永遠大於 lookup vector時,返回最後一個 小於 lookup vector 對應的result lookup 1,0 b2 b6 b9 e2 e6...

office2019 excel的函式lookup怎麼使用

函式太多了 常見的sum 求和 還有if函式,邏輯判斷語句 在excel裡可以找的到 你找到函式那一欄,點一個函式,在對話方塊的左下面就會有對它用法的相應解釋 比如說,我想求兩個欄間數目的綜合,可以點你想留下資料的那一框,點插入 函式,然後在左面文字框中選擇數學與三角函式,在右面選擇sum,確定,然...

誰能幫我解釋一下這個函式是excel的

k45 h45 3.6如是整數,那麼就看k45 h45 3.6如有就取k45 h45 3.6的整數,否則為0 k45 h45 3.6如不是整數,那麼就看k45 h45 3.6如有就取k45 h45 3.6的整數再加1,否則為0 if函式判斷,if logical test,value if true...