去除器

Excel如何批量删除单元格内文字

发布时间:2024/9/17 12:21:19   
白癜风知名专家 https://m.39.net/baidianfeng/a_4174796.html

Excel是我们日常工作中常用的数据存储工具,我们经常会将生产中的一些数据存储到Excel中,而在Excel中,每个单元格内能够输入的内容是不受限制的,你可以输入中文,英文,数字等,Excel都能够存储,不过在后期经行数据处理的时候,我们可能会需要针对这样复杂的数据进行二次处理,比方说因为登记数据的样式不规范,原来应该是数组的那一列中,出现了很多的中文名称,那么如果要批量删除单元格内的文字,要如何操作呢?

电脑:戴尔灵越

系统:win10

版本:Excel

如果需要删除的文字是相同的字符,可以用Excel的替换功能

删除并不一定要去删掉,我们的目的就是让文字消失,那么其实也可以用替换的功能,将文字替换成为空白就可以了,那么在什么样的情况下,可以使用这样的方法呢?这里有一个前提,那就是你要删除的文字是一个固定的字段,如何替换呢?直接将固定的字段替换成为空即可,看看下面的动图

我们可以看到,通过这个简单的替换功能,我们就成功的单元格内的文字批量全部删除了,只保留了我们需要保留的内容。

如果要删除的文字单元格内容样式标准,那么可以采用Excel地分列功能进行拆分

当然要删除的文字,在多数情况下,都不会是统一的,所以这个时候我们就需要另寻他法了,我们可以首先观察下我们要处理的单元格,如果样式都是一直的,或者格式都是统一的话,我们就可以利用Excel地分列功能,将不要保留的字段,单独分列出来,然后在进行删除,这样也可以实现删除的效果,我们来看看下面的动图

从上面的动图中可以看到,在格式规则,样式统一的情况下,我们就可以通过这个分列的方式来实现文字的删除,其实就是讲不要的字段分列出来,已实现删除的效果。

样式不统一,要删除的目标文字又不相同,可以使用VBA搭配正则

这种情况就是最复杂的了,如果样式、文字的内容都不一致的情况下,常规的Excel功能似乎就很难实现批量删除的效果了,这个时候我们就可以考虑选择使用Excel的vba功能,自己编写代码来删除,这里我们用正则+vba的方式来实现,代码如下

Subchinese()DimrngAsRangeaAsRangeSetrng=Application.InputBox()ForEachaInrngMyStr=a.ValueResultStr=WithCreateObject().Pattern=.IgnoreCase=.Global=If.test(MyStr)Thena=.Replace(MyStr,"")EndIfEndWithNextaEndSub

可以看到,利用VBA的方法,也可以很快的删除文字,能够面对的场景更加的复杂,更加的灵活,正则因为是文字匹配,文字删除的强大利器,而恰好VBA又可以使用正则,所以两者一搭配,文字就迎刃而解了,上面的代码也可以直接套用,非常方便。



转载请注明:http://www.aideyishus.com/lkzp/7595.html
------分隔线----------------------------