优秀的编程知识分享平台

网站首页 > 技术文章 正文

15、职场人必看!VBA文本处理的N个实用技巧大放送(零基础入门)

nanyue 2025-07-27 22:43:28 技术文章 1 ℃


1、在VBA编程体系中,文本处理堪称核心基石。无论是去除字符串首尾冗余空格实现数据规范化,通过大小写转换统一文本格式,还是利用字符截取精准提取关键信息,这些基础操作都贯穿于数据清洗、文档自动化处理、信息检索等多个应用场景。熟练掌握文本处理技巧,是提升VBA编程效率与精准度的必备能力。


2、文本去空格用处多多

trim(str) 去除文本两端空格

Ltrim(str) 去除文本左端空格

Rtrim(str) 去除文本左端空格


WorksheetFunction.Substitute(str, " ", "") 去除所有空格


例题:总有人喜欢在录姓名时,到处加空格。美其名曰对齐o(╥﹏╥)o,这样极不方便后期的数据处理,特别在查找。(如下图例子 实例+代码)

3、英文字母可以大小写转换,数字简体转繁体

Ucase(str) 英文小写转大写

Lcase(str) 英文大写转小写

WorksheetFunction.Text(ran, "[DBNum2]") & " 元整" 数字转简体转繁体

(简单函数,自行验证不详说)


4、字符串操作

Len(str) 计算字符串长度

left(num_chars) 从左边提取字符串,括号(str,提取数量)

right(num_chars) 从右边提取字符串,括号(str,提取数量)

mid(string,start[,length]) 从中间提取字符串,括号(str,从第几个开始提取,连续提取几个)


实例图解(图中附代码)


5、滚动字幕的制作

今天有参观,校长要求在校门口的大电视上放滚动的欢迎词。这个难不倒我,VBA就可以制作(下附代码)

Sub 跑马灯()

Dim t$, x%, str$

S = True

str = "研指导!☆☆热烈欢迎☆☆上级领导、考察团专家等一行来我校调"

‘这是欢迎词的内容,存放在str变量中

0

t = Timer

Do Until Timer > t + 0.5

DoEvents

Loop

'从do开始到loop,可以暂时理解为让程序暂停,时长0.5秒

x = Len(str)

‘计算欢迎词的字符数量

If S = True Then

‘如果S这个布尔函数为“真”时,运行以下代码

Range("c3") = Left(str, 7)

‘整个屏幕(C3单元格)刚好放下7个字符,就截取了欢迎词的左边7个字符

str = Right(str, x - 1) & Left(str, 1)

‘欢迎词改为:把左边第一个字符放到最后面。每次改动一个,看起来就像字母滚动

GoTo 0

‘返回 0 ,起到无限循环效果

ElseIf S = False Then

Exit Sub

‘如果s这个布尔函数为“假”时,退出程序

End If

End Sub


Sub 停止跑马灯()

S = False

End Sub

‘改变布尔值,让滚动字幕停止


(留个作业):试一下通过身份证号码提取出生年月日和性别


(本章完)有任何批评或疑问,可以在评论区讨论,谢谢!!

不论你是求知若渴的在校学生,还是在职场摸爬滚打多年的上班族,只要怀揣着提升自我的决心,别犹豫,快点赞、关注、收藏!我会始终站在零基础小白的视角,循序渐进,带你一步步踏入VBA的奇妙世界。

最近发表
标签列表