学Excel函数公式,怎能不会这个组合套路?
我們對(duì)數(shù)據(jù)進(jìn)行查詢時(shí),經(jīng)常會(huì)使用VLOOKUP函數(shù)。但有時(shí)我們提取符合條件的結(jié)果是多個(gè),而不是一個(gè),這時(shí)候VLOOKUP就犯難了。
舉個(gè)例子
如下圖,左側(cè)A1:C10是一份學(xué)員名單表,現(xiàn)在需要根據(jù)F1單元格的“EH圖班”這個(gè)指定的條件,在F2:F10單元格區(qū)域中,提取該班級(jí)全部學(xué)員名單。
F1的值是“EH圖表班”,需要在F2:F10單元格區(qū)域得到圖表班相關(guān)成員的人名。
接下來(lái)就分享一個(gè)函數(shù)查詢方面的萬(wàn)金油套路:
INDEX+SMALL+IF
F2單元格輸入以下數(shù)組公式,按住Ctrl+Shift鍵不放,再按回車鍵,然后向下填充:
=IFERROR(INDEX(B:B,SMALL(IF(A$1:A$10=F$1,ROW($1:$10)),ROW(A1))),"")
公式講解
IF(A$1:A$10=F$1,ROW($1:$10))
這部分,先判斷A1:A10的值是否等于F1,如果相等,則返回A列班級(jí)相對(duì)應(yīng)的行號(hào),否則返回FALSE,結(jié)果得到一個(gè)內(nèi)存數(shù)組:
{FALSE;2;3;FALSE;FALSE;FALSE;FALSE;8;FALSE;10}
再來(lái)看這部分:
SMALL(IF(A$1:A$10=F$1,ROW($1:$10)),ROW(A1))
SMALL函數(shù)對(duì)IF函數(shù)的結(jié)果進(jìn)行取數(shù),隨著公式的向下填充,依次提取第1、2、3……n個(gè)最小值,由此依次得到符合班級(jí)條件的行號(hào)。
隨后使用INDEX函數(shù),以SMALL函數(shù)返回的行號(hào)作為索引值,在B列中提取出對(duì)應(yīng)的姓名結(jié)果。
當(dāng)SMALL函數(shù)所得到的結(jié)果為錯(cuò)誤值#NUM時(shí),意味著符合條件的行號(hào)已經(jīng)被取之殆盡了,此時(shí)INDEX函數(shù)也隨之返回一個(gè)錯(cuò)誤值,為了避免公式返回一個(gè)錯(cuò)誤值,最后使用IFERROR函數(shù)進(jìn)行規(guī)避,使之返回一個(gè)空文本""。
其它說明
很多時(shí)候,一些朋友喜歡把INDEX+SMALL+IF的套路寫成:
=INDEX(B:B,SMALL(IF(A$1:A$10=F$1,ROW($1:$10),4^8),ROW(A1)))&""
或
=INDEX(B:B,SMALL((A$1:A$10<>F$1)/1%+ROW($1:$10),ROW(A1)))&""
這兩個(gè)套路,通過引值真空單元格搭配&””的方法,很巧妙的規(guī)避了錯(cuò)誤值的出現(xiàn),而且公式的長(zhǎng)度得到了精簡(jiǎn),是IFERROR函數(shù)未出現(xiàn)前處理錯(cuò)誤值的常用技巧。
只是當(dāng)公式的查找結(jié)果為數(shù)值或者日期時(shí),這個(gè)方法會(huì)把數(shù)值變成文本值,并不利于數(shù)據(jù)的準(zhǔn)確呈現(xiàn)以及再次統(tǒng)計(jì)分析。
比如一個(gè)簡(jiǎn)單的SUM求和,對(duì)于此類文本數(shù)據(jù)的統(tǒng)計(jì)都是麻煩的,原因是大部分統(tǒng)計(jì)函數(shù)都忽略文本值,不予計(jì)算。
所以通常還是建議大家使用IFERROR函數(shù)來(lái)處理錯(cuò)誤值。
最后留下一道練手題,如下圖,根據(jù)A1:C10區(qū)域的數(shù)據(jù),將E列相關(guān)班級(jí)的姓名,填充到F2:I5區(qū)域。
固定鏈接:http://www.excelhome.net/lesson/article/excel/1914.html
轉(zhuǎn)載于:https://blog.51cto.com/14237164/2363064
超強(qiáng)干貨來(lái)襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生總結(jié)
以上是生活随笔為你收集整理的学Excel函数公式,怎能不会这个组合套路?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 百度黄埔学院学员开题 | ‘首席 AI
- 下一篇: 蚂蚁金服开源自动化测试框架 SOFAAC