咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

太强大了,一分钟就完成了我需要半个多小时完成的事情!——山东朋友如是说。


昨天有一位山东的朋友吐槽,他正用WORD对一批稿件进行校对,这批稿件有些文字问题是通用的,几乎每一个文件都存在。


所以,他每处理一个文件,都要编辑相同的二十几组通配符公式,使用WORD的查找替换功能执行一遍,非常的繁琐。



他问我是否可以做一个小程序,设置一次,就可以一劳永逸,所有文件替换一键完成。当然可以。


这里会讲到WORD VBA的相关知识,下面进入手把手教学。


首先,看一下你的电脑有没有“开发工具”,在这里。



如果没有,那就跟我一起操作,如图,先点文件,再点选项,在弹出的窗口中,把“开发工具”前面的框给勾上,再点击右下角的确定键,“开发工具”就会在主菜单中显示出来了。



在主菜单中,点击“开发工具”,点击“Visual Basic”。


在弹出的窗口中,在“NewMacros”上单击右键,依次在右键菜单中选择“插入”,选择“模块”。


这时,在你的屏幕右侧,就出现了一个窗口



你可以把我这段代码直接复制粘进去。


Sub 使用通配符做批量替换() '程序开始

Dim myRange As Range, yangA As String, FoundCount As Long, MyNum As Long

Dim FoundText As String, Num As Long, Str As String

Application.ScreenUpdating = False ' 关键屏幕更新

Selection.WholeStory '选择文档全部内容

Selection.HomeKey wdStory '移动光标至文档开始

Selection.Find.Replacement.Font.Color = wdColorRed '替换后的文字,会标为红色字体

'===============================================================================

With Selection.Find

.MatchWildcards = True '使用通配符

.Text = "在这里输入你想要查找的内容,可以是通配符公式,注意,两侧的引号要保留"

With .Replacement

.Text = "在这里输入你想要替换的内容,注意,两侧的引号要保留"

End With

If .Execute = True Then '如果找到了指定内容

.Execute Replace:=wdReplaceAll '就执行全文替换

End If

End With

'===============================================================================

Application.ScreenUpdating = True ' 开启屏幕更新

MsgBox "OK" '程序执行完成后,会弹出消息框,提示程序结束

End Sub '程序结束


我在核心代码的两端,用了明显的分隔线做了标记。


这段核心代码,是可以根据需要,多次复制使用的,为了大家理解,我展示一下为山东朋友写的部分真实代码。


就是这样,你可以设置多个查找和替换的条件。


在初次设置中,你可能会花费一些时间,但在使用时,工作效率会非常高。


代码写完了,如何调用呢,在主菜单的“视图”里。依次点击“视图”,“宏”,“查看宏”。



在弹出的窗口中,选择你刚才编辑的这个程序,点击运行就可以了。


如果你有山东朋友同样的需求,可以动手试一下,这篇文章看着很长,实际上,熟练后,你的操作只需要几分钟。动手试一试吧。


作者专长于WORD VBA、EXCEL VBA、Csharp程序开发,如果你对本篇文章有不明白的地方或在办公时有其他困惑,欢迎关注我,在评论区留言,一起交流讨论。