LOOKUP公式中1和0的含義,我用1500字給大家講明白了

Excel中最常用的查找函數無非就是VLOOKUP和LOOKUP,VLOOKUP函數可以做到的用LOOKUP函數也可以做到,VLOOKUP函數不能做到的LOOKUP函數卻可以做到。所以今天要跟大家分享的是LOOKUP函數的經典查找方式。

一、LOOKUP函數用法。

LOOKUP函數有2種語法形式:向量法和數組法。今天講的是向量法。

向量語法形式:LOOKUP(lookup_value,lookup_vector,[result_vector])。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

各參數含義:

lookup_value:要查找的值。可以為數字、文本、邏輯值或包含數值的名稱或引用。

lookup_vector:只包含一行或一列的區域。可以為文本、數值或邏輯值。若為數值,必須升序排序,否則,不能返回正確的結果。若為文本,則不區分大小寫。

result_vector:只包含一行或一列的區域。區域大小必須跟lookup_vector一致。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

二、LOOKUP函數模糊查找實例運用。

模糊查找要求LOOKUP函數第2個參數必須按生序排序,否則不能返回正確的結果。下圖中

表1已經對編號做了升序排序處理,表2沒有排序。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

要求:分別在2個表中查找編號對應的訂單號。

步驟:在下圖中的C15單元格中輸入公式“=LOOKUP(B15,$B$3:$B$12,$C$3:$C$12)”,按回車鍵,然後下拉公式至C17單元格。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

在下圖中的F15單元格中輸入公式“=LOOKUP(E15,$E$3:$E$12,$F$3:$F$12)”,按回車鍵,然後下拉公式至F17單元格。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

對比上面2張圖片,我們發現F15、F162個單元格的查找結果是不正確的,這是為什麼呢?這是因為我們一開始所說的lookup_vector必須升序,否則就會出現上圖所看到的結果。

那麼,很多情況下我們並不能對數據做升序排序,在lookup_vector沒有排序的情況下,我們怎樣才能查找到正確的結果呢?下面就是我要跟大家講解的重點,採用LOOKUP函數經典語法來解決,該語法如下:

LOOKUP(1,0/(條件),查找區域或數組)

如果條件有多個,語法如下所示:

LOOKUP(1,0/((條件1)*(條件2)*(條件3)*...*(條件N)),查找區域或數組)

語法中的1和0分別表示什麼?首先,0/(條件)中的“條件”是一組邏輯值或由邏輯值運算得到的由TRUE和FALSE組成的數組,因此:0/(條件)相當於構建一個由0和錯誤值#DIV/0組成的數組。如果條件為真,返回TRUE,條件為假,返回FALSE,0/(條件)相當於0/TRUE=0,0/FALSE=#DIV/0。整個公式的意思是:要在一個由0和錯誤值#DIV/0組成的數組中查找1,很明顯找不到,那就返回最接近於1的值,也就是0,用大於0的數值來查找0,肯定可以查找最後一個滿足條件的。

所以不管有沒有排序,利用LOOKUP函數的經典語法,下圖中C15單元格的公式可改成“=LOOKUP(1,0/(B15=$B$3:$B$12),$C$3:$C$12)”。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

F15單元格的公式可改成“=LOOKUP(1,0/(E15=$E$3:$E$12),$F$3:$F$12)”。

LOOKUP公式中1和0的含義,我用1500字給大家講明白了

這樣子不管數據源有沒有排序,用了上面的語法,結果都是正確的。這就是這期教程跟大家講解的重點,記住模板語法“LOOKUP(1,0/((條件1)*(條件2)*(條件3)*...*(條件N)),查找區域或數組)”,理解語法中1和0的含義,以後就可直接套用這條公式,學起來吧!

關注我,每天都可以讓您學到一個實用的辦公技巧!

覺得文章對您有幫助,可以任意讚賞,轉發,點贊,有問題可在評論區直接留言!


分享到:


相關文章: