删除附带原始内容的“.1”。“2”等重复项

时间:2014-02-25 23:21:24

标签: excel duplicates

我有一个100k +行电子表格,其副本不完全重复。例如,一个单元格将具有以下内容:

  

ASP.NET.Site.Performance.Secrets..Simple.and.Proven.Techniques.to.Quickly.Speed.up.Your.ASP> .NET.Web.Site

有时,以下单元格(或2或3)将具有相同的确切内容,但最后会有一个数字:

  

ASP.NET.Site.Performance.Secrets..Simple.and.Proven.Techniques.to.Quickly.Speed.up.Your.ASP> .NET.Web.Site.1

     

ASP.NET.Site.Performance.Secrets..Simple.and.Proven.Techniques.to.Quickly.Speed.up.Your.ASP> .NET.Web.Site.2

如何有效地消除这些重复?谢谢你尽你所能的帮助。

1 个答案:

答案 0 :(得分:1)

假设数据在A列中,按如下方式创建一个新的计算列:

=IF(ISNUMBER(VALUE(RIGHT(A2,LEN(A2)-FIND("@",SUBSTITUTE(A2,".","@",(LEN(A2)-LEN(SUBSTITUTE(A2,".","")))/LEN(".")))))),LEFT(A2,FIND("@",SUBSTITUTE(A2,".","@",(LEN(A2)-LEN(SUBSTITUTE(A2,".","")))/LEN(".")))-1),A2)

这太丑了。公式检​​查最后一个句点之后的字符是否为数字。如果是这样,它会剥离它们并关闭它们。如果没有,它只返回原始字段。

归功于Excel: last character/string match in a string,了解如何在字符串中最后一次出现字符。

修改 基于它始终是一个数字,可以简化功能。

=IF(AND(ISNUMBER(VALUE(RIGHT(A1,1))),MID(A1,LEN(A1)-1,1)="."),LEFT(A1,LEN(A1)-2),A1)

这会检查最后一个字符是 AND 的数字,后面的第二个字符是“。”