站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

本文分享Excel用公式篩選完成一對多查找,是比較經典的excel篩選函數(shù)公式自動查找公式數(shù)據(jù)。

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

手機如何做表格:點擊查看

用你的EXCEL、PPT、WORD等技能在業(yè)余時間來兼職賺錢::點擊入駐

總是聽到高手們說有個萬金油公式,可到底什么是萬金油公式,這個Excel公式又能干什么呢?不妨先看看下面這個效果圖:

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

這個例子就是一個典型的一對多查找,查找條件是部門,在數(shù)據(jù)源內每個部門對應的都是多個數(shù)據(jù),萬金油公式最主要的用途就是用來解決一對多查找等一些相對復雜的問題。上面動畫中的公式為:

=IFERROR(INDEX($A$2:$D$21,SMALL(IF($C$2:$C$21=$F$2,ROW($1:$20),99),ROW(A1)),MATCH(F$3,$A$1:$D$1,0)),"")

看到這個公式,或許很多朋友都會驚嘆:這么長的公式,看不懂哇!

今天就和大家一同破解這個看不懂但又很強悍的公式套路,耐心往下看哦……

上面這個公式一共用了六個函數(shù):IFERROR、INDEX、SMALL、IF、ROW和MATCH,其中的IFERROR和MATCH是本例中輔助性的兩個函數(shù),其余的四個INDEX-SMALL-IF-ROW就是萬金油公式啦。

因此我們先來學習這個核心部分的原理:

F4單元格的公式為:

=INDEX($A$2:$A$21,SMALL(IF($C$2:$C$21=$F$2,ROW($1:$20),99),ROW(A1)))

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

先從INDEX說起,這個函數(shù)基本功能是給出一個區(qū)域,然后根據(jù)對應的行列位置返回查找結果,上圖中INDEX查找的數(shù)據(jù)區(qū)域就是姓名所在的區(qū)域$A$2:$A$21。

INDEX函數(shù)的基本結構是:INDEX(查找區(qū)域,第幾行,第幾列),如果區(qū)域是單行或者單列的話,后面兩個參數(shù)可以省略一個。通俗點說,你拿著電影票去找座位,整個大廳的座位就是區(qū)域,第幾排第幾座就是公式中的后面兩個參數(shù),通過這種方式可以準確找到目標位置。

在上面這個例子里,區(qū)域是在一列,所以我們只需要確定每個數(shù)據(jù)在第幾行就行。

明白這一點的話,我們的重點就該放到INDEX的第二個參數(shù)了:

SMALL(IF($C$2:$C$21=$F$2,ROW($1:$20),99),ROW(A1))

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

注意看上面這個圖,銷售部一共有四條記錄,分別在數(shù)據(jù)區(qū)域的第5、8、9和16行(數(shù)據(jù)區(qū)域是從第二行開始)。

因此我們希望公式下拉的時候,INDEX的第二個參數(shù)分別是5、8、9和16這四個數(shù)字(這一點一定要想明白)。

注意,接下來我們即將接觸到萬金油最核心的部分,請保持高度集中的注意力……

SMALL函數(shù)的基本結構:SMALL(一組數(shù),第幾小的數(shù))

建議自己模擬個簡單的數(shù)據(jù)來充分理解這個函數(shù),方法如下:

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

在A列輸入一些數(shù)字,公式的意思是這列數(shù)字中最小的一個,結果是2,很好理解對不對,將公式的第二個參數(shù)改成2,再看看結果:

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

倒數(shù)第二小的是4。

如果希望繼續(xù)得到第三小的數(shù),該怎么做我想大家都能想到,但是會有個問題,我們只能手動修改第二參數(shù),并不能通過下拉來實現(xiàn)這個參數(shù)的變化,如果要想可以下拉的話,第二參數(shù)就需要用到ROW函數(shù),也就是這樣修改:

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

ROW函數(shù)非常簡單,得到的就是參數(shù)的行號,通過這個公式,我們就把A列的數(shù)據(jù)從小到大排了個序,覺得有意思嗎?

回到我們的萬金油公式,5、8、9和16這四個數(shù)字代表什么意思還記得吧,我們需要用SMALL函數(shù)依次得到這四個數(shù)字,思路是通過判斷C列是否與F2一致,如果一樣得到行號,如果不一樣,就得到一個比最大行號還大的數(shù)字(目的是為了防止被查找到):

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

要實現(xiàn)這個目的,就需要IF函數(shù)的介入,于是就有了:

IF($C$2:$C$21=$F$2,ROW($1:$20),99),用這一段來作為SMALL的第一個參數(shù)。

關于這段IF,就比較容易理解了,我們可以借助F9來看看這段公式的結果:

深入解析Excel萬金油篩選公式“INDEX-SMALL-IF-ROW”

因為我們的數(shù)據(jù)就20個,所以IF的第三個參數(shù)使用99就足夠了,如果數(shù)據(jù)量比較大的話,可以用9^9,表示9的9次方,反正足夠大就行。

搞清楚這個IF的話,再來看這段SMALL(IF($C$2:$C$21=$F$2,ROW($1:$20),99),ROW(A1))是不是就沒那么暈了。

關于SMALL這部分,一定要明白是隨著公式下拉的時候,逐個得到我們希望得到的那幾個數(shù)字,然后用這些數(shù)字作為INDEX的第二參數(shù),就可以得到最終需要的結果。

萬金油的核心就是INDEX、SMALL、IF和ROW,請大家務必反復琢磨,把這部分原理搞清楚。還有非常重要的一點需要強調,萬金油公式是一個數(shù)組公式,因此需要我們按著Ctrl和shift再回車。

至于一開始的公式,考慮到要查找多列的內容,所以INDEX的數(shù)據(jù)區(qū)域用的$A$2:$D$21,多列的時候,就需要提供列位置才能找到目標值,因此用MATCH(F$3,$A$1:$D$1,0)來確定數(shù)據(jù)在第幾列。

每個部門的數(shù)據(jù)都不一樣多,我們需要將公式多向下拉幾行,這時候就會產生一些錯誤值,在公式的最外層使用IFERROR函數(shù)屏蔽了錯誤值,使得查詢結果看起來非常干凈。

今天只是使用了一對多查找這樣一個例子來解釋萬金油公式的原理,實際上萬金油的套路還有很多,大家喜歡的話以后繼續(xù)分享相關的實例,當然,如果看完本文的話能夠自己去解讀一些復雜的公式就更好了。

相關學習推薦:excel教程

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
日韩视频一区二区| 91精品国产乱码久久久久久 | 亚洲AV日韩AV永久无码免下载| 亚洲首页国产精品丝袜| 99re最新地址精品视频| 亚洲AV无码久久精品色欲| 日韩精品福利片午夜免费观着 | 91精品国产高清久久久久久国产嫩草 | 亚洲精品韩国美女在线| 亚洲日韩av无码| 99亚洲精品卡2卡三卡4卡2卡| 国产在视频线精品视频二代| 视频二区国产精品职场同事| 国产在热线精品视频| 日韩精品电影一区| 精品亚洲福利一区二区| 精品久久久久久蜜臂a∨| 亚洲国产精品综合福利专区| 久久99精品一区二区三区| 国产综合精品一区二区三区| 精品一久久香蕉国产线看播放| 日韩精品一区二区三区视频| 精品特级一级毛片免费观看| 日韩在线观看第一页| 亚洲AV日韩综合一区| 成人麻豆日韩在无码视频| 日韩精品无码成人专区| 精品96在线观看影院| 日韩精品久久久肉伦网站| 日韩在线中文字幕制服丝袜| 国产一区二区三区国产精品| 国产91精品新入口| 日韩电影免费在线观看网址| 国产成人一区二区三区精品久久| 国产精品视频李雅| 国产精品jvid在线观看| 国产精品资源在线观看| 中文字幕日韩在线观看| 国产精品成人免费观看| 亚洲AV日韩AV无码污污网站 | 国内精品国产成人国产三级|