大名鼎鼎的VLOOKUP函數(shù)是表親的好伙伴,遇到數(shù)據(jù)查詢的時(shí)候,總離不開她。
但是VLOOKUP函數(shù)也有一定的局限性,通常情況下,只能返回符合條件的單個(gè)結(jié)果,如果有多個(gè)符合條件的結(jié)果,如何用VLOOKUP提取呢?
先來(lái)看一段動(dòng)畫吧:
=COUNTIF(B$2:B2,F$1)
提取結(jié)果的公式是:
=IFERROR(VLOOKUP(ROW(A1),A:C,3,0),'')
先簡(jiǎn)單說(shuō)說(shuō)輔助列中公式的意思。
用COUNTIF函數(shù)在B$2:B2這個(gè)區(qū)域內(nèi)統(tǒng)計(jì)查詢值(F1單元格)出現(xiàn)的次數(shù)。
這個(gè)B$2:B2是有講究的,第一個(gè)B2是行絕對(duì)引用,第二個(gè)B2是相對(duì)引用,這樣公式在向下復(fù)制時(shí),就依次變成了B$2:B3、B$2:B4、B$2:B5……。
也就是隨著公式向下復(fù)制,給COUNTIF函數(shù)指定一個(gè)逐行擴(kuò)展的引用區(qū)域。
COUNTIF函數(shù)能夠統(tǒng)計(jì)B列從B2單元格開始,到公式所在行這個(gè)范圍中,與查詢值相同的個(gè)數(shù)。
如果查詢值在B列是第一次出現(xiàn),結(jié)果就是1;如果是第二次出現(xiàn),結(jié)果就是2……
假如只有兩個(gè)符合條件的結(jié)果,查詢值出現(xiàn)之后的其他內(nèi)容,結(jié)果仍然是2.
再來(lái)說(shuō)說(shuō)查詢用到的公式:
=IFERROR(VLOOKUP(ROW(A1),A:C,3,0),'')
公式中的ROW(A1)部分,公式向下復(fù)制時(shí),依次變?yōu)?/span>ROW(A2)、ROW(A3)……,結(jié)果得到1、2、3……的遞增序列。
VLOOKUP函數(shù)使用這個(gè)遞增序列作為查詢值,在A:C列中,以精確匹配的方式返回與序號(hào)相對(duì)應(yīng)的姓名。
注意查找區(qū)域必須由輔助列A列開始哦,否則咱們的輔助列就白瞎了。
由于VLOOKUP函數(shù)默認(rèn)只能返回第一個(gè)滿足條件的記錄,因此得到序號(hào)第一次出現(xiàn)的對(duì)應(yīng)結(jié)果,也就是與F1單元格班級(jí)相同的對(duì)應(yīng)姓名。
當(dāng)ROW函數(shù)的結(jié)果大于A列中的最大的數(shù)字時(shí),VLOOKUP函數(shù)會(huì)因?yàn)椴樵儾坏浇Y(jié)果而返回錯(cuò)誤值#N/A,IFERROR函數(shù)用于屏蔽錯(cuò)誤值,使之返回空文本''。
怎么樣,你理解了嗎?還是那句話,光說(shuō)不練假把式,動(dòng)手試試吧。
動(dòng)畫:看見星光
圖文:祝洪忠
一大波免費(fèi)公開課,精彩即將開啟
點(diǎn)左下角【閱讀原文】立刻報(bào)名免費(fèi)公開課吧!
聯(lián)系客服