用VBA批量替换多个Word文档中同一内容

VBA 专栏收录该内容
2 篇文章 0 订阅


  

   利用VBA可以轻松地将某文件夹下的所以WORD文档中的某个字符串全部替换为其他字符串。下面是具体操作步骤。

  第一,首先将需要批量替换的多个Word文档放在同一文件夹下面。

  第二,新建一空白Word文档,右击空白工具栏,单击“控件工具箱”,就可以看到屏幕上调出的控件工具箱。

  第三,在控件工具箱上单击“命令按钮”,文档中就放置了一个按钮了。

  第四,双击该按钮,进入VB代码编写模式,将以下代码复制进去。

Private SubCommandButton1_Click()
Application.ScreenUpdating = False
Dim myPas As String, myPath As String, i As Integer, myDoc AsDocument

WithApplication.FileDialog(msoFileDialogFolderPicker)
    .Title ="选择目标文件夹"
    If .Show =-1 Then
     myPath = .SelectedItems(1)
    Else
     Exit Sub
    End If
End With
myPas = InputBox("请输入打开密码:")

WithApplication.FileSearch
    .LookIn =myPath
    .FileType =msoFileTypeWordDocuments
    If .Execute> 0 Then
     For i = 1 To .FoundFiles.Count
       Set myDoc = Documents.Open(FileName:=.FoundFiles(i),Passworddocument:=myPas)
       Selection.Find.ClearFormatting
       Selection.Find.Replacement.ClearFormatting
       With Selection.Find
       .Text = "中微子工作室"
       .Replacement.Text = "
www.jihetu.com"
       .Forward = True
       .Wrap = wdFindAsk
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchByte = True
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
      End With
      Selection.Find.Execute Replace:=wdReplaceAll
      myDoc.Save
      myDoc.Close
      Set myDoc = Nothing
     Next
    End If
End With
Application.ScreenUpdating = True
End Sub

   第五,保存上面代码,退出VB编辑模式,返回Word文档界面。

  第六,单击选中该按钮,再单击控件工具箱的第一个按钮“退出设计模式”。

  第七,进行测试:点击按钮,选择要放置多个WORD文档所在的文件夹,确定后即可完成!注意如果WORD文档没有加密的话,密码项就不填,直接确认。 你会发现该文件夹下面的所有WORD文档中“中微子工作室”已被替换为“http://www.jihetu.com”了。

 

  说明:在实际使用中,可以更改上面代码中的""引号里的字符内容为实际需要批量替换的内容即可。如下所

示。
  .Text = "中国"

   .Replacement.Text ="China"

 

附:相关对象说明

1.Find对象

该对象代表查找操作的执行条件,其属性、方法和“替换”对话框中选项一致,具体如下所述:

(1)Font属性

该属性由于返回或设置Font对象,代表指定对象的字符格式。

(2)Wrap属性

该属性用于设置在搜索时进行的相关操作,可通过常量进行赋值,具体如下所述:

A、wdFindAsk常量:搜索完毕后,显示是否搜索文档的其他部分的消息框。

B、wdFindContinue常量:搜索完毕后,继续执行。

C、wdFindStop常量:搜索完毕后,停止执行。

(3)Format属性

该属性用于设置是否在查找操作中包含格式。

(4)MatchCase属性

该属性用于设置在查找时是否区分大、小写。

(5)MatchWholeWord属性

该属性用于设置是否在查找时仅对完整单词进行匹配。

(6)MatchByte属性

该属性用于设置是否在查找时区分全角和半角的字符。

(7)MatchWildcards属性

该属性用于设置是否在查找时允许使用查找通配符。

(8)MatchSoundsLike属性

该属性用于设置是否在查找时返回与待查文字发音相近的单词。

(9)Execute方法

该方法用于执行替换或查找操作。

(10)ClearFormatting方法

该方法用于清除替换或查找的内容。

2.Replacement对象

该对象代表查找和替换操作的替换条件,其属性、方法和“查找和替换”对话框中的选项一致,具体如下所述:

(1)Text属性

该属性用于设置选择内容中需查找或替换的文本。

  • 5
    点赞
  • 2
    评论
  • 26
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值