Etapa 1: Pressione "Alt-F11" para abrir a janela Microsoft Visual Basic for Application.
Etapa 2: Clique em Módulo na guia Inserir, copie e cole o código VBA a seguir na janela Módulo.
Etapa 3: Em seguida, clique no botão Executar (F5) para aplicar o VBA.
VBA: pesquisando e substituindo o mesmo conteúdo em vários documentos de uma só vez
Sub CommandButton1_Click()
Dim MyDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
On Error Resume Next
Set MyDialog = Application.FileDialog(msoFileDialogFilePicker)
With MyDialog
.Filters.Clear
.Filters.Add "All WORD File ", "*.docx", 1
.AllowMultiSelect = True
i = 1
If .Show = -1 Then
For Each stiSelectedItem In .SelectedItems
GetStr(i) = stiSelectedItem
i = i + 1
Next
i = i - 1
End If
Application.ScreenUpdating = False
For j = 1 To i Step 1
Set Doc = Documents.Open(FileName:=GetStr(j), Visible:=True)
Windows(GetStr(j)).Activate
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "search" 'Find What
.Replacement.Text = "find" 'Replace With
.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
Application.Run macroname:="NEWMACROS"
ActiveDocument.Save
ActiveWindow.Close
Next
Application.ScreenUpdating = True
End With
MsgBox "operation end, please view", vbInformation
End Sub
Observação: você pode alterar o texto="pesquisar", substituir.Texto="localizar" para especificar o conteúdo a ser pesquisado e o conteúdo a ser aplicado para substituição.
.Text = "search" 'Find What
.Replacement.Text = "find" 'Replace With
Crédito: extendoffice