打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
wordvba批量替换word内文字
userphoto

2023.05.05 云南

关注

测绘小当家 测绘小当家 今天

点击上方蓝字关注小当家

最近因为在做大量报表遇见一个问题,不小心把一个编号写错了,一错百错,然后导致大量的表格里面的编号都是错了,如果人工改需要一个个的文件去打开然后替换,非常麻烦没有效率。我想想怎么能非常有效率的去解决呢,于是我想到了vba,刚刚好今天休息,于是研究了下。

代码如下

Sub a()

    On Error Resume Next

    Dim sFolderFullPath As String

    Dim oFiles As Collection

    Dim lFileIndex As Long

    Dim sFileFullName As String, sFileName As String

    Dim oDoc As Word.Document

    Dim lDocCount As Long

    With Application.FileDialog(msoFileDialogFolderPicker)

        .AllowMultiSelect = False

        .Title = '请选择文件夹'

        .Show

        If .SelectedItems.Count = 0 Then

            MsgBox '您没有选择一个文件夹,程序将退出!'

            Exit Sub

        End If

        sFolderFullPath = .SelectedItems.Item(1)

    End With

    sFileName = Dir(sFolderFullPath & '\*.doc*', vbNormal)

    While Len(sFileName) > 0

        sFileFullName = sFolderFullPath & '\' & sFileName

        Set oDoc = Documents.Open(sFileFullName)

        If Not oDoc Is Nothing Then

        With Selection.Find

            .ClearFormatting

            .Text = '需要替换的文字'

            .Replacement.ClearFormatting

            .Replacement.Text = '替换后的文字'

            .Execute Replace:=wdReplaceAll, Forward:=ture, Wrap:=wdFindContinue

    oDoc.Save

    oDoc.Close

        End With

        End If

        sFileName = Dir  '枚举下一个

    Wend

End Sub

  1. 打开word的vba

如果没有开发者工具选项alt+F11可以打开,或者在文件——选项——自定义功能区把开发者工具选项勾选。

2.到达这个界面

没有代码工具窗口的,视图——代码窗口或者F7即可

3.将代码粘贴到工具窗口

 .Text = '需要替换的文字'

            .Replacement.ClearFormatting

            .Replacement.Text = '替换后的文字'

修改需要替换和替换后的文字。

4.替换

F5运行代码,选择需要修改文件的位置。(我这里是把仪器编号替换为hello)

然后等一会它就全部替换了

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
如何用vba给word文档的奇偶页设置页码?
VBA操作WORD(一):设置段落的行间距(行距)
Word-VBA【干货案例】
vb操作word字符替换添加表格文字格式
VBA word插入图片位置解决方法
用TTcpClient和TTcpServer进行文件的传输 - [Delphi编程]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服