數(shù)據(jù)源:
查詢結(jié)果:
處理類似這樣區(qū)間查詢的問題,通??梢允褂胿lookup,lookup、match等函數(shù),利用其查找的原理來實(shí)現(xiàn)。
這里先看一個(gè)栗子。
需要在左邊的表格,查找右邊的數(shù)值。
用vlookup,lookup,match三個(gè)公式。
vlookup公式:
=VLOOKUP($Q2,$O$1:$O$6,1,TRUE)
lookup公式:
=LOOKUP(Q2,$O$1:$O$6,$O$1:$O$6)
match公式:
=MATCH(Q2,$O$1:$O$6,1)
返回結(jié)果:
可見,三個(gè)公式,在查找的時(shí)候,都返回比查找值小的最大的值(或位置),都用到了函數(shù)本身的模糊查找設(shè)置。
如100為例子,vlooukp在o1:o6查找,找不到,返回比100小的最大值81.lookup同樣如此,match同樣如此,只是match返回的結(jié)果是單元格所在的行號(hào)(位置)。
上述的栗子,前提是o1:o6中的數(shù)據(jù)源要升序排列(切記切記)。
再回頭,將數(shù)據(jù)源更改如下
此題要求按2個(gè)條件分區(qū)間查找,按大類和價(jià)格模糊查找。
多條件查找,一般都使用lookup函數(shù)的套路。
盡管vlookup、match也能實(shí)現(xiàn)多條件查找,但遠(yuǎn)遠(yuǎn)沒有l(wèi)ookup來的方便。
公式如下:
=LOOKUP(1,0/(($A$2:$A$18=F2)*($B$2:$B$18<=G2)),$D$2:$D$18)
神馬都不需要管,按套路照著做來就行。
=LOOKUP(1,0/((條件1)*(條件2)*......更多條件),查找區(qū)間)
條件1:大類
$A$2:$A$18=F2
條件2:返回小于等于查找價(jià)格的最大值
$B$2:$B$18<=G2
公式下拉,結(jié)果:
聯(lián)系客服