您的位置:首页 > 编程语言 > VB

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

2016-08-22 11:42 246 查看



利用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属性

该属性用于设置选择内容中需查找或替换的文本。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: