多语言展示
当前在线:934今日阅读:176今日分享:34

Excel利用函数+数组公式实现高级筛选

在数据库中,面对一组重复度很高的数据时,若想提取其中出现过哪些数据,去掉冗余项,那么我们可以有group by语句来实现,在Excel中,若想实现这个功能,就需要借助数组公式和Excel函数来实现,数组公式用于产生一组结果,函数用于控制结果。
工具/原料
1

Microsoft Excel

2

一组存在冗余度的数据

方法/步骤
1

首先我们有一列数据,B2:B14,其数据有重复

2

在D2输入公式=INDEX($B:$B,MIN(IF(COUNTIF($D$1:D1,$B$2:$B$14),2^20,ROW($B$2:$B$14))))&''$B:$B是数据源所在的列的引用$D$1:D1,这个需要解释,对于公式所在的单元格,它必须能够包含该单元格之前所有已经产生结果的区域,例如当公式填充到D4单元格时,这个区域就是D1:D3,能包含D2单元格和D3单元格已经产生的两个结果。如果我们从D列的第n行(n>=2)开始写公式,那么这里就可以写$D$k:Dn-1,这里的k取0到n之间的任何值都是可行的$B$2:$B$14是数据所在的区域

3

输入完后,不要急于退出公式编辑模式,同时按下键盘Ctrl+Shift+Enter,生成数组,表现为公式两端出现花括号

4

利用填充柄将D2向下拖动,得到结果

5

按行输出结果需要修改公式:=INDEX($B:$B,MIN(IF(COUNTIF($F$1:F1,$B$2:$B$14),2^20,ROW($B$2:$B$14))))&''这里主要将之前的$D$1:D1改为了$F$1:F1,即与公式所在单元格处于同一行

6

同样同时按下键盘Ctrl+Shift+Enter,生成数组

7

填充柄向右拖动,得到结果

推荐信息