文/黃波藝
一般在日常工作應(yīng)用中,需要查找數(shù)據(jù)時缺前,VLOOKUP函數(shù)/HLOOKUP函數(shù)是最常用的蛀醉。似乎LOOKUP函數(shù)用得少一些。但是衅码,相對VLOOKUP/HLOOKUP,LOOKUP函數(shù)的自由度更大拯刁,在某些條件下表現(xiàn)得更強悍。比如多條件查找數(shù)據(jù)逝段。
今天就主要講講LOOKUP函數(shù)的多條件查找在工作中可能的應(yīng)用垛玻。
語法
LOOKUP(lookup_value,lookup_vector奶躯,result_vector)
LOOKUP(lookup_value帚桩,array)
要點
1.LOOKUP函數(shù)查找方式是“模糊查找”,沒有像VLOOKUP和HLOOKUP那樣可以設(shè)置精確查找的參數(shù)嘹黔。
2.LOOKUP函數(shù)用“二分法”進(jìn)行查找账嚎。
3.返回小于等于lookup_value(查找值)的最大值。
4.Lookup_vector(查找區(qū)域)中如果有“錯誤值“儡蔓,那么LOOKUP函數(shù)在查找時將會忽略錯誤值郭蕉。
先看一個VLOOKUP函數(shù)應(yīng)用的例子:
在綠色單元格輸入姓名,B12,C12通過VLOOKUP公式很容易可以查找到相應(yīng)部門和職務(wù)喂江,顯然這是單個條件(A12)的查找召锈。
假如我想反過來,輸入部門和職務(wù)获询,查找到相應(yīng)的名字呢涨岁?怎么做?
嵌套IF函數(shù)當(dāng)然可以完成筐付,但是多重嵌套IF函數(shù)容易出錯洋只,效率低说庭。一般我們盡量避免嵌套多重IF函數(shù)咸灿。沒錯摸吠,用LOOKUP函數(shù)。
我來解釋一下=LOOKUP(1,0/((B2:B8=E2)*(C2:C8=F2)),A2:A8)這個公式较解。
B2:B8=E2
B2:B8與E2比較畜疾,返回的是一個數(shù)組,結(jié)果只有TURE和FALSE(即1和0)印衔。如果在查找區(qū)域找到了“研發(fā)部“啡捶,那返回的數(shù)組里有一個1和六個0。
C2:C8=F2
C2:C8與F2比較奸焙,返回的是一個數(shù)組瞎暑,結(jié)果只有TURE和FALSE(即1和0)彤敛。如果在查找區(qū)域找到了“副經(jīng)理“,那返回的數(shù)組里有一個1和六個0了赌。
((B2:B8=E2)*(C2:C8=F2))
兩個數(shù)組進(jìn)行乘法運算墨榄,最后得出的也是一個7行一列的數(shù)組,同樣可能包含1和0勿她。
(關(guān)于數(shù)組以及數(shù)組運算的原理袄秩,之前的文章有詳細(xì)介紹。)
0/((B2:B8=E2)*(C2:C8=F2))
0除以任何數(shù)(0除外)等于0逢并;但如果被除數(shù)為0之剧,則返回錯誤值。
到此為止砍聊,如果在B列和C列都找到符合條件的數(shù)據(jù)背稼,那么0/((B2:B8=E2)*(C2:C8=F2))返回的數(shù)組里就一定有一個0值,其它為錯誤值辩恼。見下圖:(需要查看某一段公式的運算結(jié)果雇庙,在公式欄中將其“抹黑”,再按F9鍵即可灶伊。)
LOOKUP(1,0/((B2:B8=E2)*(C2:C8=F2)),A2:A8)
在{#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;0;#DIV/0!}里查找1,結(jié)果返回A2:A8的對應(yīng)數(shù)據(jù)寒跳。
PS:請在回頭看看上面的“要點“聘萨。
0小于1,同時忽略了錯誤值童太。0為數(shù)組中的第六行數(shù)據(jù)米辐,所以返回的結(jié)果必然是A2:A8中的第六行數(shù)據(jù)(即A7)。這就是LOOKUP函數(shù)中的模糊查找书释。
上面的例子是兩個條件查找翘贮,多個條件查找也是同樣的格式:
LOOKUP(1,0/((條件1)*(條件2)*(條件3)*…(條件n)),結(jié)果區(qū)域)
這個公式涉及了數(shù)組,一旦理解了這個公式爆惧,那么在多條件查找的時候?qū)⒎浅:糜谩?/p>
IFERROR(LOOKUP(1,0/((B2:B8=E2)*(C2:C8=F2)),A2:A8),"無記錄")
這個公式在原來公式的基礎(chǔ)要再套了一個IFERROR函數(shù)狸页,目的是萬一源數(shù)據(jù)表里沒有相關(guān)記錄,不至于出現(xiàn)”#N/A扯再!”這種不和諧的符號而已芍耘。
IFERROR函數(shù)
當(dāng)然,LOOKUP函數(shù)的用法遠(yuǎn)不止這一種熄阻,利用LOOKUP函數(shù)“模糊查找”的屬性斋竞,還可以是實現(xiàn)對學(xué)生成績的等級判定,銷售人員的傭金比例等級判定等等秃殉。}"?}?
當(dāng)你需要多條件查找的時候坝初,第一時間應(yīng)考慮用LOOKUP函數(shù)浸剩。