分享

你还在苦恼文本中无处不在、或隐或现的空格嘛?VBA帮你轻松搞定

 我的人生宝库 2019-07-25

VBA早间档

VBA早间档,利用简单的几分钟,学习一些简单的VBA知识,提升工作效率

今日主题

今天我们继续来学习一些轻松简单的东西,之前我们学习了用split来拆分文本,那今天就来介绍下如何去除文本中无处不在,或隐或现的空格

案例展示和解析

你还在苦恼文本中无处不在、或隐或现的空格嘛?VBA帮你轻松搞定

这里今天我们要操作的工作表,很明显的,文本参差不齐,有些两边有空格,有些中间有空格,还有一些左边或者右边有空格,这样的文本让我们处理起来都非常的不舒服,来看看用代码如何轻松处理

代码区

去除左边空格

Sub kong1()Dim rng As RangeFor Each rng In Selection rng.Offset(0, 1) = LTrim(rng)Next rngEnd Sub

非常的简单,关键点只有一个

LTrim,去除左边的空格,同样的还有一个相对的

RTrim,去除右边的空格

最终效果如下

你还在苦恼文本中无处不在、或隐或现的空格嘛?VBA帮你轻松搞定

可以看到原来左边的空格,都已经没有了,单元格左边看起来非常的整齐

一次只能去处一边的空格,如果两边都有岂不是要执行两次代码,那么有没有更省事一点的方法呢?有

同时去除两边的空格

Sub kong2()Dim rng As RangeFor Each rng In Selection rng.Offset(0, 2) = Trim(rng)Next rngEnd Sub

最终效果如下

你还在苦恼文本中无处不在、或隐或现的空格嘛?VBA帮你轻松搞定

看起来似乎没有太大的区别,我们抽取一个来看看,第6行

你还在苦恼文本中无处不在、或隐或现的空格嘛?VBA帮你轻松搞定

实现的方法全部依赖trim(),他的作用就是将字符串两边的空格全部去掉,等于是实现了上面Ltrim+Rtrim的效果

去除中间的空格

既然前后左右的空格都能去除了,那么中间还残留的那个空格就太显眼了,能去掉嘛

Sub kong3()Dim rng As Range, s$For Each rng In Selection rng.Offset(0, 3) = Replace(rng, ' ', '')Next rngEnd Sub

方法简单粗暴,直接将空格全部替换成为非空的样式就可以了。

你还在苦恼文本中无处不在、或隐或现的空格嘛?VBA帮你轻松搞定

可以看到中间的空格已经不复存在了

方法非常的简单,replace(s,'你要替换的字符','打算替换成什么样的字符')

==========================================

以上就是今天的VBA早间档的全部内容,感谢大家的捧场~~

空格的去除常用的方法就这些了,如果需要源文件的话可以私信“空格”获取,感谢支持~~

明天早上7:30,准时再见

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多