excel公式:提取出不重复数值 EXCEL中提取不重复的数值
1、打开表格,并在表格里面选中需要提取的数据。
2、然后在表格功能框里面点击数据,再选择数据里面的高级选项进入。
3、开了高级筛选之后,勾选将筛选结果复制到其他位置,并在列表区里面选择数据源。
4、选择了筛选区域之后,点击复制到旁的按钮,设置筛选结果的位置,并勾选选择不重复的记录。
5、点击确定,这样就可以在表格里面提取不重复项了。
这个提问很有意思,要理解这个公式,不妨把问题再简化一下:
如图,在E1输入如下数组公式(用Shift+Ctrl+Enter输入):
=INDEX(D:D,SMALL(IF(MATCH(D$1:D$20&"",D$1:D$20&"",)=ROW($1:$20),ROW($1:$20),4^8),ROW(1:1)))&""
下拉
用鼠标在编辑栏把MATCH(D$1:D$20&"",D$1:D$20&"",)变成高亮,如下图:
按F9,得下图:
其中{1;2;2;4;2;2;2;1;2;1;4;2;1;4;15;2;4;4;1;4}就是公式MATCH(D$1:D$20&"",D$1:D$20&"",)的计算结果,它表示数组D$1:D$20={3;5;5;2;5;5;5;3;5;3;2;5;3;2;4;5;2;2;3;2}的每一项的数字在数组中第一次出现的位置。例如3;5;5;2对应1;2;2;4等等。
ROW($1:$20)={1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20}
MATCH(D$1:D$20&"",D$1:D$20&"",)=ROW($1:$20)返回如下逻辑数组(可用按F9得到):
{TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}它反映数组D$1:D$20中某数字第一次出现的位置,TRUE为第一次出现,FALSE则不是。
IF(MATCH(D$1:D$20&"",D$1:D$20&"",)=ROW($1:$20),ROW($1:$20),4^8)则构造了如下数组(可用按F9得到):
{1;2;65536;4;65536;65536;65536;65536;65536;65536;65536;65536;65536;65536;15;65536;65536;65536;65536;65536}
它是当D$1:D$20中的数字在D$1:D$20中第一次出现时,返回它的行号,否则返回一个很大的数65536
SMALL(IF(MATCH(D$1:D$20&"",D$1:D$20&"",)=ROW($1:$20),ROW($1:$20),4^8),ROW(1:1))则返回上述数组的最小值
公式下拉后
SMALL(IF(MATCH(D$1:D$20&"",D$1:D$20&"",)=ROW($1:$20),ROW($1:$20),4^8),ROW(2:2))则返回上述数组的第二小值
如此等等。
于是INDEX(D:D,SMALL(IF(MATCH(D$1:D$20&"",D$1:D$20&"",)=ROW($1:$20),ROW($1:$20),4^8),ROW(1:1)))&""
在E列依次列出了D列中第一次出现的数,下拉到出现空格,则E列列出了D列全部的不重复数。
这是一个典型的按小到大排序的函数。
当然,分解任何公式都得从内而外,这个也不例外。
1、MATCH(D$1:D$1000&"",D$1:D$1000&"",)
在D1至D1000的范围连上“”,查找D1至D1000“”
2、IF(MATCH(D$1:D$1000&"",D$1:D$1000&"",)=ROW($1:$1000),ROW($1:$1000),4^8)
如果第1项返回的行号 等于 1至1000中的数字,就返回这些行号,否则就返回4^8(即65536)
3、SMALL(第2项公式,ROW(2:2)))
(注:你这里是ROW(2:2),上面一条公式应该有ROW(1:1))
这条公式明显是要向下填充的,SMALL(……,ROW(2:2)))意思就是,往下填充的时候,从第2项得到的数组中分别取出第1小、第2小、第3小……的数字。
4、INDEX(D:D,第3项公式)
公式下拉填充的时候,顺序插入D列所对应该的第3项取出来的行号。
比如:第三项分别取出了2、3、5、6、7,这里就是插入D列的第2行、第3行、第5行、第7行、第7行
总结:这就相当于一个按顺序排序或者叫做筛选的函数公式。
选择每一段公式, 然后按下F9查看公式结果, 就知道它的运算过程了
也可以使用审阅公式的功能
你是否需要了解?
怎样提取excel表格里的不重复的数据?
1、首先打开电脑上的excel表格,然后统计不重复的个数。2、然后使用公式,=SUMPRODUCT(1\/COUNTIF(A2:A9,A2:A9))。3、使用公式后统计不重复的个数,便于在数据量大的情况下使用公式。4、提取不重复的内容C2单元格输入以下数组公式,按Ctrl+ Shift+Enter,向下复制。=INDEX(A:A,1+MATCH(,COUNTIF(C...
Excel中提取两列中取不重复值之数组公式法图解
Excel中提取两列中不重复值之数组公式法的具体步骤如下:准备数据:假设有两列数据在A1:A24和B1:B24中。输入MATCH函数:在一个空白单元格中,开始输入数组公式。使用MATCH函数匹配A列中的每个值在其首次出现的位置,并与行号进行比较。公式为:MATCH=ROW。注意这里要使用绝对引用。结合ROW函数:ROW函数返...
怎样用公式提取不重复数据
输入数组公式:=INDEX=ROW,ROW,4^8),ROW))。这里,A:A代表你要提取不重复数据的数据列,A$1:A$8代表该列中你要检查的范围。注意:输入完公式后,不要直接按Enter键,而是按Ctrl+Shift+Enter组合键,这样Excel会将其作为数组公式处理。之后,你可以向下填充公式以提取更多不重复数据。使用Excel的内...
怎样用公式提取不重复数据 Excel如何从一列里面提取不重复的数据
在Excel中,要从一列里面提取不重复的数据,可以通过以下两种方法实现:方法一:使用“删除重复值”功能 步骤:选择包含数据的列。在Excel的菜单栏中,点击“数据”选项卡。在“数据工具”组中,点击“删除重复值”按钮。Excel会自动检测并删除选定的列中的重复值,只保留唯一的数据。方法二:使用数组公式...
excel从一列中提取不重复值的两个公式
如果Excel工作表的某列中包含一些有重复数据,要从该列中提取不重复的数据,即对于重复的数据仅保留一个,从而形成一列无重复的数据,除了使用高级筛选、数据透视表等方法外,还可以用公式来实现。提取不重复值的公式非常多,下面就是两个比较简单的。假如在A2:A19中有一列名单,现在要将无重复的名单...
Excel表格提取一列中不重复数据
另外,还可以使用公式如=UNIQUE来直接获取不重复数据。提取唯一值:如果使用Excel工具箱,点击“随机重复”后选择“提取唯一值”。如果使用内置功能,按照上述提示操作以获取不重复数据。保存为一列:确保选择将提取的不重复数据保存为一列。指定一个单元格作为存放位置,例如A2。确认并完成:点击“确定”或...
如何在EXCEL中,通过公式筛选出一列数据的不重复项
在Excel中筛选出一列数据的不重复项,可以使用一些公式实现。比如,假设我们需要处理的数据位于A1至A9单元格,可以利用以下公式来获取最小值和最大值:A13=MIN($A$1:$A$9)B13=MAX($A$1:$A$9)接着,为了找到第二小的值,可以使用以下公式:A14=SMALL($A$1:$A$9,COUNTIF($A$1:$A$9,"...
excel表格怎么把一列中不重复的数据提取出来
假设你的数据位于A列,要在B列提取不重复的数据,首先在B1单元格输入数组公式:=INDEX(A:A,SMALL(IF(MATCH($A$1:$A$10000&"",$A$1:$A$10000&"",0)=ROW($A$1:$A$10000),ROW($A$1:$A$10000),4^8),ROW(A1)))&""这个公式是利用了MATCH和INDEX函数的组合。请记得,输入时要按...
excel怎么在一列有很多重复值的数据中查找唯一值即不重复的数值
要在一个Excel工作表的A列中查找并提取唯一值,即不重复的人名,可以按照以下步骤操作:1.首先,新建一个空白的工作表。2.在A列输入人名,注意到会有重复值。目标是将这些唯一的人名移到B列。3.从B2单元格开始,输入公式=INDEX(A$1:A$99,MATCH(0,COUNTIF(B$1:B1,A$1:A$99),0)),并同时...
EXCEL中如何提取单元格中不重复的数值?
第1步 B1=IF(--LEFT(B1),"",0)&SUM(RIGHT(LARGE(IF(ISERR(FIND({0;1;2;3;4;5;6;7;8;9},B1)),,FIND({0;1;2;3;4;5;6;7;8;9},B1)*10+{0;1;2;3;4;5;6;7;8;9}),{1;2;3;4;5;6;7;8;9;10}))*10^{1;2;3;4;5;6;7;8;9;10})\/10同时按CTRL ...