Hello,大家好,最近有粉絲問到:有沒有什么簡(jiǎn)單的方法,能在不添加輔助列的情況下快速地搞定多條件查詢,他覺得利用輔助列比較low。今天跟大家分享一種我覺得非常適合新手使用的方法,就是利用lookup函數(shù),使用這個(gè)函數(shù)即使我們不理解公式的含義,只需要記得固定的格式,直接套用即可,下面就讓我們來學(xué)習(xí)一下吧
一、認(rèn)識(shí)lookup函數(shù)
大多數(shù)人非常熟悉的vlookup函數(shù),就是由lookup函數(shù)改進(jìn)得來的,所以lookup函數(shù)也是一個(gè)查找函數(shù)。
Lookup函數(shù):從單行或單列中查找數(shù)據(jù)
語(yǔ)法:=LOOKUP(lookup_value, lookup_vector, result_vector)
第一參數(shù):需要查找值
第二參數(shù):查找的數(shù)據(jù)區(qū)域,一行或者一列
第三參數(shù):返回的結(jié)果列,需要注意的是第三參數(shù)的數(shù)據(jù)個(gè)數(shù)必須與第二參數(shù)的數(shù)據(jù)格式相等

在使用lookup之前,我們還需要對(duì)第二參數(shù)查找的數(shù)據(jù)區(qū)域進(jìn)行升序排序,否則的話可能會(huì)返回錯(cuò)誤的結(jié)果。還有一點(diǎn)需要注意的是lookup的查找原理與vlookup的近似匹配是一模一樣的,如果找不到精確的結(jié)果,lookup就會(huì)返回小于或等于查找值的最大值。下面我們來通過一個(gè)實(shí)際的例子來了解下lookup函數(shù)
二、使用lookup函數(shù)
比如在這里,我們想要求一下張飛的考核得分,如果我們不對(duì)數(shù)據(jù)區(qū)域進(jìn)行升序排序,直接使用lookup函數(shù)來查找結(jié)果,公式為:=LOOKUP(L4,B2:B9,C2:C9),他的結(jié)果是208,這個(gè)結(jié)果并不是張飛對(duì)應(yīng)的考核得分,當(dāng)我們對(duì)查找區(qū)域進(jìn)行升序排序后,才能找到張飛對(duì)應(yīng)的195分,所以當(dāng)我們使用lookup函數(shù)的時(shí)候,需要首先對(duì)查找數(shù)據(jù)區(qū)域進(jìn)行升序排序。還有就是第三與第二參數(shù)的數(shù)據(jù)個(gè)數(shù)必須相等,否則的話函數(shù)就會(huì)返回錯(cuò)誤值

三、利用lookup函數(shù)解決多條件查詢
1.為什么要使用多條件查詢
在Excel中如果我們的查找值在查找區(qū)域中存在重復(fù),那么函數(shù)僅僅會(huì)返回第一個(gè)找到的結(jié)果,這樣的話就可能得到一個(gè)錯(cuò)誤的結(jié)果
如下圖,李白是存在重復(fù)值的,在這里我們想要查找3班李白的總分,如果僅僅將李白作為查找值,我們使用vlookup函數(shù)來查找數(shù)據(jù)他的結(jié)果是186,這個(gè)是1班李白對(duì)應(yīng)的分?jǐn)?shù),并不是3班李白對(duì)應(yīng)的分?jǐn)?shù),這樣的話結(jié)果就是錯(cuò)誤的,之所以會(huì)產(chǎn)生這樣的結(jié)果的原因是因?yàn)?86是第一個(gè)李白對(duì)應(yīng)的數(shù)據(jù)

2.lookup多條件查詢
既然一個(gè)條件我們不能查找到精確的結(jié)果,那么我們就要增加條件來獲得精確的結(jié)果,這個(gè)就是多條件查詢存在的意義
在這里我們只需要將公式設(shè)置為:=LOOKUP(1,0/((B2:B9=J4)*(C2:C9=K4)),D2:D9)然后點(diǎn)擊回車即可查找到正確的結(jié)果。這個(gè)函數(shù)是一個(gè)數(shù)組公式,理解起來可能比較困難,下面我們來剖析下這個(gè)函數(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))這是一個(gè)數(shù)組公式,B2:B9=J4與C2:C9=K4會(huì)與數(shù)據(jù)區(qū)域的中的每一個(gè)元素都發(fā)生計(jì)算,如下圖所示

B2:B9=J4他的意思是:班級(jí)等于3班的,它的結(jié)果如下圖橙色區(qū)域所示,是一列邏輯值。C2:C9=K4的結(jié)果如下圖綠色區(qū)域所示,它的意思是姓名等于李白。隨后將這兩列結(jié)果相乘,可以將fales看作是0,true看作是1,相乘之后會(huì)得到一列0和1的數(shù)字,只有兩個(gè)條件都滿足它的結(jié)果才是1,最后我們?cè)儆?除以相乘結(jié)果,分母為0的話就會(huì)返回錯(cuò)誤值,lookup會(huì)自動(dòng)的將錯(cuò)誤值忽略掉,這樣的話就僅僅只剩0這個(gè)結(jié)果了,這樣的話也就不用進(jìn)行升序排序了。這個(gè)就是第二參數(shù)的計(jì)算過程
如果你覺得這個(gè)函數(shù)比較難懂,只需要記得這個(gè)公式的設(shè)置格式即可。格式為:=lookup(1,0/((條件1)*(條件2)*(條件3)),結(jié)果列)有幾個(gè)條件就設(shè)置幾個(gè)條件即可
以上就是今天分享的全部?jī)?nèi)容,怎么樣?你學(xué)會(huì)了嗎?