发新话题
打印

求助帖:如何去除单行多列重复数据,然后合并不重复数据

求助帖:如何去除单行多列重复数据,然后合并不重复数据

如题。一个公司有多个电话,想合并到E列。

公式应该怎么设置?!

[ 本帖最后由 maximus 于 2016-5-26 15:55 编辑 ]

附件

Book6.xls (10.5 KB)

2016-5-26 13:11, 下载次数: 87

电话统计表.xls (36 KB)

2016-5-26 15:55, 下载次数: 55

有难度 容我三思 顺便召唤@zhendeaini  大哥```
=PHONETIC(B2:D2),下拉
引用:
原帖由 Guest from 150.40.186.x 于 2016-5-26 14:54 发表
=PHONETIC(B2:D2),下拉
这个不会去掉重复的数据
水平有限,将就着用

附件

Book6.xls (21.5 KB)

2016-5-26 15:05, 下载次数: 47

引用:
原帖由 looloo 于 2016-5-26 15:05 发表
水平有限,将就着用
能讲下公式的大概思路吗?
看不太懂。
因为我还需要扩张范围需要改公式。
附件电话号码只有3列,实际上我有八列的。

而且公式有错误。
如果三列都有数据,
B和CD不同,C和D相同,结果H列BCD都会显示。

[ 本帖最后由 maximus 于 2016-5-26 15:41 编辑 ]
引用:
原帖由 maximus 于 2016-5-26 15:37 发表


能讲下公式的大概思路吗?
看不太懂。
因为我还需要扩张范围需要改公式。
附件电话号码只有3列,实际上我有八列的。

而且公式有错误。
如果三列都有数据,
B和CD不同,C和D相同,结果H列BCD都会显示。
三列应该是没问题的,思路就是对比,一二列进行比对合并再和第三列进行比对,细节就是可能某些号码是空的,需要用到FIND函数去定位前面两个号码的起始位置,如果是八列的话,这个方法就会比较麻烦
我跟楼上的方法差不多,我是用这条公式实现的(根据你发的表格做的)

=IF(AND((B2=C2),(B2=D2)),B2,IF((B2=C2),C2&D2,IF((B2=D2),B2&C2,IF((C2=D2),B2&D2,B2&C2&D2))))

大概意思是两两对比,每一步排除一种情况。比如第一步最外边的IF是排除掉三列相同的情况,第二步就在不考虑三列相同的前提下,再排除掉B、C列相同的情况,如此类推直到每一种情况都有这条公式应该就可以了。但如果你真是要求八列的,那要排除的情况就翻了几倍了,太烧脑了,可能我这种方法有点难搞定了。[2]

附件有我用你发的表格做的,我水平也是有限,请你参考使用。

附件

三列对比合并.xls (15.5 KB)

2016-5-26 16:47, 下载次数: 27

再用数组再做了个,这个应该能用

附件

Book6.xls (43.5 KB)

2016-5-26 16:55, 下载次数: 51

123
那你最后的结果要的是一个重复都不要,还是只要是不同公司,重复也可以[32]
引用:
原帖由 maximus 于 2016-5-26 15:37 发表


能讲下公式的大概思路吗?
看不太懂。
因为我还需要扩张范围需要改公式。
附件电话号码只有3列,实际上我有八列的。

而且公式有错误。
如果三列都有数据,
B和CD不同,C和D相同,结果H列BCD都会显示。
用你的八列电话号码做了一个,功能应该实现了,就是比较粗暴简陋了一点,如果是八列电话的则需要有七列辅助列才可以得出结果列。[39]
原理大概是:将第二列的电话号码跟第一列的电话号码对比看看是否相同,得出的结果放在“辅助列1”里面,然后将第三列电话跟“辅助列1”对比,看看是否包含在内,如果包含有就忽略,没有就包含进去,如此类推,直到对比齐八列电话号码最终得出结果。虽然简单粗暴,不过最大的优点就是扩展性强,可以随着你的电话列增加再增加“辅助列”就可以了。
在附件,请你看看是否合用。

附件

电话统计表.xls (97.5 KB)

2016-5-27 09:27, 下载次数: 25

引用:
原帖由 Guest from 150.48.153.x 于 2016-5-26 16:47 发表
我跟楼上的方法差不多,我是用这条公式实现的(根据你发的表格做的)

=IF(AND((B2=C2),(B2=D2)),B2,IF((B2=C2),C2&D2,IF((B2=D2),B2&C2,IF((C2=D2),B2&D2,B2&C2&D2))))

大概意思是两两对比,每一步排除一种情况 ...
高手。
公式很简单。不需要辅助列。[12]

测试了一下也没发现错误。
引用:
原帖由 looloo 于 2016-5-26 16:55 发表
再用数组再做了个,这个应该能用
[12]  高手。试了下。超级棒!

真是卧虎藏龙
引用:
原帖由 Guest from 150.48.153.x 于 2016-5-27 09:27 发表


用你的八列电话号码做了一个,功能应该实现了,就是比较粗暴简陋了一点,如果是八列电话的则需要有七列辅助列才可以得出结果列。[39]
原理大概是:将第二列的电话号码跟第一列的电话号码对比看看是否相同,得出 ...
谢谢。很好用!
辅助列多一点问题都没有,隐藏一下界面还是很简单的。
最主要是思路简单清晰。让人一下就能看懂[24]

用简单的方法解决复杂的问题[12]
谢谢各位大神。我都收藏了。
表格第2行最尾列=IF(B2="","",IF(COUNTIF($A2:A2,B2),"",B2)),往右拉,再往下拉有几个电话就拉几格,再用3楼公式合并[32]
引用:
原帖由 Guest from 150.40.186.x 于 2016-5-27 11:14 发表
表格第2行最尾列=IF(B2="","",IF(COUNTIF($A2:A2,B2),"",B2)),往右拉,再往下拉有几个电话就拉几格,再用3楼公式合并[32]
这个也好用![12] 能讲解下这个公式吗。我对IF和countif函数不太懂。组合在一起就更蒙了。

[ 本帖最后由 maximus 于 2016-5-27 12:51 编辑 ]
引用:
原帖由 maximus 于 2016-5-27 12:43 发表



这个也好用![12] 能讲解下这个公式吗。我对IF和countif函数不太懂。组合在一起就更蒙了。
IF 的用法是,先给出一个判断条件,符合就执行一个,否则就执行另外一个,IF(A=B,A,B),如果A=B就出现A,否则就B

countif 的意思是计算一定范围内符合条件的个数,比如COUNTIF($A2:A2,B2)就是A2到A2范围里跟B2相等的个数
引用:
原帖由 maximus 于 2016-5-27 12:43 发表



这个也好用![12] 能讲解下这个公式吗。我对IF和countif函数不太懂。组合在一起就更蒙了。
用$A2锁定第一格非电话号码,countif可以计算范围内的数据出现次数。这段函数组合的意思就是如果该单元格为非空,向该格左边的单元格计算出现的次数,如果出现0次,也就是没重复,则显示该格的元素,出现1次或以上,就为空值。
发新话题
查看积分策略说明

快速回复主题

选项

[完成后可按 Ctrl+Enter 发布]  预览帖子  恢复数据  清空内容