ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > 函数与公式 > 如何做到只要重复值?

如何做到只要重复值?

作者:绿色风 分类: 时间:2022-08-17 浏览:105
楼主
悟空师弟
Q:一列数据中有很多重复的,也有很多不重复的,现在想把所有有重复的选出来放在另一列,没有重复的不要,请问用什么公式可以解决啊?
A:数组公式:
  1. =INDEX(A:A,SMALL(IF((COUNTIF(A$1:A$15,A$1:A$15)>1)*(MATCH(A$1:A$15,A$1:A$15,)=ROW($1:$15)),ROW($1:$15),16),ROW()))&""

下拉!
详见附件:

如何做到只要重复值?.rar

效果如图:

 
2楼
wjc2090742
高级筛选法:http://www.exceltip.net/thread-5636-1-1.html


B1:B15
  1. {=""&INDEX(A:A,SMALL(SUBSTITUTE((COUNTIF(A1:A15,A1:A15)>1)*(MATCH(A1:A15,A1:A15,)=ROW(1:15)),0,200)*ROW(1:15),ROW()))}
输入公式后,可以选中公式,然后点击上方的“代码”按钮,变成可以直接复制到剪贴板的。这样也方便我们复制楼主的公式。就是图中<>那个按钮。

 
3楼
rongjun
  1. =INDEX(A:A,SMALL(IF(COUNTIF(OFFSET($A$1,,,ROW($1:$15)),$A$1:$A$15)=2,ROW($1:$15),4^8),ROW(A1)))&""
4楼
wjc2090742
还请rongjun版主讲解一下公式中
  1. COUNTIF(OFFSET($A$1,,,ROW($1:$15)),$A$1:$A$15)=2
的部分,不是很明白这一步的运算。
5楼
aichong
=INDEX(A:A,SMALL(IF(FREQUENCY(MATCH($A$1:$A$15,$A$1:$A$15,),MATCH($A$1:$A$15,$A$1:$A$15,))>1,ROW($1:$15),6000),ROW(1:1)))&""
6楼
rongjun
解释:
  1. COUNTIF(OFFSET($A$1,,,ROW($1:$15)),$A$1:$A$15)=2
利用OFFSET函数产生三维引用,利用COUNTIF隐含交叉特性进行计数,返回数组:
  1. {1;2;1;2;1;2;3;1;1;1;1;1;2;1;2}
即相当于:
COUNTIF(A1,A1)…………………………1
COUNTIF(A1:A2,A2)……………………2
COUNTIF(A1:A3,A3)……………………1
……………………………………………
COUNTIF(A1:A15,A15)…………………2
然后跟2进行比较,=2即表示重复。
7楼
donghan
这个作法比较特别,学习了
8楼
悟空师弟
感谢2楼的指导!
感谢3楼提供的经典公式!
9楼
poiuyman5
very nice!!!
10楼
文太
扫盲必备啊,谢谢支持了
11楼
文太
扫盲必备啊,谢谢支持了
12楼
yeminqiang
这个方法也可以(excel2007版)。1、条件格式--突出单元格规则--标记重复值(用颜色标记重复值)2、按颜色帅选重复值。3、将重复值复制到其他区域,然后点击---数据----删除重复项。小弟不会函数,想到了这个方法。
13楼
Fannie_X
还没看懂,多看看!

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap