要想一下子就替換掉很多個WORD文檔中的內容,我們得使用VBA的辦法才能實現,下面是方法,請過目。
一、前期准備
下面是具體操作步驟。
A,首先將需要批量替換的多個Word文檔放在同一文件夾下面。
B,新建一空白Word文檔,右擊空白工具欄,單擊“控件工具箱”,就可以看到屏幕上調出的控件工具箱。
C,在控件工具箱上單擊“命令按鈕”,文檔中就放置了一個按鈕了。
D,雙擊該按鈕,進入VB代碼編寫模式,將以下代碼復制進去。
二、命令按鈕的代碼
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim myPas As String, myPath As String, i As Integer, myDoc As Document
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "選擇目標文件夾"
If .Show = -1 Then
myPath = .SelectedItems(1)
Else
Exit Sub
End If
End With
myPas = InputBox("請輸入打開密碼:")
With Application.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 = "OfficeStudy"
.Replacement.Text = "www.dzwebs.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文檔中的"OfficeStudy"被替換為"www.dzwebs.com"了。
說明:在實際使用中,可以更改上面代碼中的""引號裡的字符內容為實際需要批量替換的內容即可。如下所示。
.Text = "OfficeStudy"
.Replacement.Text = www.dzwebs.net