昨日网友咨询关于word批量替换的功能,其实这个功能很简单,大家可以录制宏看单个文档替换的代码,最后在叠加个批量读取循环就可以实现:
代码如下:
Sub wordreplace()
Dim T
Dim doc As Document
Dim fd As FileDialog
Dim vrtSelectedItem As Variant
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
Documents.Open FileName:=vrtSelectedItem
Set doc = ActiveDocument
With doc.Content.Find
.Text = "要替换的文字"
.Replacement.Text = "替换后的文字 "
.Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue
End With
doc.Save
doc.Close
T = T + 1
Next
End If
End With
MsgBox "操作完成!!" & Chr(10) & "处理了 " & T & " 个文件。", vbOKOnly, "提示"
End Sub