Hello,大家好,最近有粉絲問到:有沒有什么簡單的方法,能在不添加輔助列的情況下快速地搞定多條件查詢,他覺得利用輔助列比較low。今天跟大家分享一種我覺得非常適合新手使用的方法,就是利用lookup函數(shù),使用這個函數(shù)即使我們不理解公式的含義,只需要記得固定的格式,直接套用即可,下面就讓我們來學習一下吧
一、認識lookup函數(shù)
大多數(shù)人非常熟悉的vlookup函數(shù),就是由lookup函數(shù)改進得來的,所以lookup函數(shù)也是一個查找函數(shù)。
Lookup函數(shù):從單行或單列中查找數(shù)據(jù)
語法:=LOOKUP(lookup_value, lookup_vector, result_vector)
第一參數(shù):需要查找值
第二參數(shù):查找的數(shù)據(jù)區(qū)域,一行或者一列
第三參數(shù):返回的結(jié)果列,需要注意的是第三參數(shù)的數(shù)據(jù)個數(shù)必須與第二參數(shù)的數(shù)據(jù)格式相等
在使用lookup之前,我們還需要對第二參數(shù)查找的數(shù)據(jù)區(qū)域進行升序排序,否則的話可能會返回錯誤的結(jié)果。還有一點需要注意的是lookup的查找原理與vlookup的近似匹配是一模一樣的,如果找不到精確的結(jié)果,lookup就會返回小于或等于查找值的最大值。下面我們來通過一個實際的例子來了解下lookup函數(shù)
二、使用lookup函數(shù)
比如在這里,我們想要求一下張飛的考核得分,如果我們不對數(shù)據(jù)區(qū)域進行升序排序,直接使用lookup函數(shù)來查找結(jié)果,公式為:=LOOKUP(L4,B2:B9,C2:C9),他的結(jié)果是208,這個結(jié)果并不是張飛對應的考核得分,當我們對查找區(qū)域進行升序排序后,才能找到張飛對應的195分,所以當我們使用lookup函數(shù)的時候,需要首先對查找數(shù)據(jù)區(qū)域進行升序排序。還有就是第三與第二參數(shù)的數(shù)據(jù)個數(shù)必須相等,否則的話函數(shù)就會返回錯誤值
三、利用lookup函數(shù)解決多條件查詢
1.為什么要使用多條件查詢
在Excel中如果我們的查找值在查找區(qū)域中存在重復,那么函數(shù)僅僅會返回第一個找到的結(jié)果,這樣的話就可能得到一個錯誤的結(jié)果
如下圖,李白是存在重復值的,在這里我們想要查找3班李白的總分,如果僅僅將李白作為查找值,我們使用vlookup函數(shù)來查找數(shù)據(jù)他的結(jié)果是186,這個是1班李白對應的分數(shù),并不是3班李白對應的分數(shù),這樣的話結(jié)果就是錯誤的,之所以會產(chǎn)生這樣的結(jié)果的原因是因為186是第一個李白對應的數(shù)據(jù)
2.lookup多條件查詢
既然一個條件我們不能查找到精確的結(jié)果,那么我們就要增加條件來獲得精確的結(jié)果,這個就是多條件查詢存在的意義
在這里我們只需要將公式設(shè)置為:=LOOKUP(1,0/((B2:B9=J4)*(C2:C9=K4)),D2:D9)然后點擊回車即可查找到正確的結(jié)果。這個函數(shù)是一個數(shù)組公式,理解起來可能比較困難,下面我們來剖析下這個函數(shù)的結(jié)構(gòu)
公式:=LOOKUP(1,0/((B2:B9=J4)*(C2:C9=K4)),D2:D9)
第一參數(shù):查找值,1
第二參數(shù):查找的數(shù)據(jù)區(qū)域,0/((B2:B9=J4)*(C2:C9=K4))
第三參數(shù):返回的結(jié)果列,D2:D9
主要跟大家講講解下他的第二參數(shù),0/((B2:B9=J4)*(C2:C9=K4))這是一個數(shù)組公式,B2:B9=J4與C2:C9=K4會與數(shù)據(jù)區(qū)域的中的每一個元素都發(fā)生計算,如下圖所示
B2:B9=J4他的意思是:班級等于3班的,它的結(jié)果如下圖橙色區(qū)域所示,是一列邏輯值。C2:C9=K4的結(jié)果如下圖綠色區(qū)域所示,它的意思是姓名等于李白。隨后將這兩列結(jié)果相乘,可以將fales看作是0,true看作是1,相乘之后會得到一列0和1的數(shù)字,只有兩個條件都滿足它的結(jié)果才是1,最后我們再用0除以相乘結(jié)果,分母為0的話就會返回錯誤值,lookup會自動的將錯誤值忽略掉,這樣的話就僅僅只剩0這個結(jié)果了,這樣的話也就不用進行升序排序了。這個就是第二參數(shù)的計算過程
如果你覺得這個函數(shù)比較難懂,只需要記得這個公式的設(shè)置格式即可。格式為:=lookup(1,0/((條件1)*(條件2)*(條件3)),結(jié)果列)有幾個條件就設(shè)置幾個條件即可
以上就是今天分享的全部內(nèi)容,怎么樣?你學會了嗎?






