EXCEL怎么删除一个单元格中重复的中文

如图这样,要把重复的去掉。形成正常的地址。如第一个为:江苏省南京市白下区御道街30号30栋404

这样的数据有很多很多,手工是不现实的。有没有公式或者函数可以实现?

用万能的VBA可以解决。

编制代码如下:

Sub 去除重复字符()

Dim I, J, K As Integer

Dim BJ As Integer


Dim s As String

Dim mya(1 To 100)

s = Cells(1, 1)

I = Len(s)

For J = 1 To I

   mya(J) = Mid(s, J, 1)

Next J

s = mya(1)

For J = 2 To I

   BJ = 0

   For K = 1 To J - 1

      If mya(J) = mya(K) Then

         BJ = 1

         Exit For

      End If

   Next K

   If BJ = 0 Then

      s = s + mya(J)

   End If

Next J

Cells(1, 2) = s


End Sub

运行结果如图:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-29
1、将数据进行分列,分列符号是逗号,然后删除中间的两列,再用“&”把1列和4列合并,把合并的结果复制,选择性粘贴,值。 保留最终结果,删除其他列。
2、以上得出的结果还有重复的,处理稍为复杂,假设上面处理后的结果放在A列,可以在B1输入公式=LEFT(A1,FIND("区",A1))&SUBSTITUTE(A1,LEFT(A1,FIND("区",A1)),""),下拉。得出的结果再经过复制,选择性粘贴,值。 保留最终结果,删除其他列。
3、重复第二步,处理重复的市和省,处理市的重复用公式=LEFT(A1,FIND("市",A1))&SUBSTITUTE(A1,LEFT(A1,FIND("市",A1)),""),处理省的重复用公式=LEFT(A1,FIND("省",A1)-1)&SUBSTITUTE(A1,LEFT(A1,FIND("省",A1)-1),""),记得是先处理市,再处理省,顺序不能错。经过以上几步后,你想要的结果应该能得到了。
第2个回答  2012-05-28
用删除重复项功能就可以实现
第3个回答  推荐于2017-11-25
是整个单元格内容相同的、还是单元格里面的数据相同?
前者的:
选该列——菜单栏——数据——筛选——高级筛选——确定——出现高级筛选对话框——勾选“选择不重复的记录”——确定。

后者的:很复杂!里面涉及到不仅仅是重复词语、还会有重复文字,哪些该删哪些不该删。

2楼所用“分列”办法,但像第6行起,要凭什么符号做分列依据?本回答被提问者和网友采纳
相似回答