Saltar al contenido principal

¿Cómo buscar y reemplazar en varios archivos en Word?

Si tiene varias docenas de archivos de palabras que contienen el mismo contenido (como encabezado, pie de página, algunas palabras o números especiales) y necesita reemplazar el mismo contenido en todos esos documentos en Word. ¿Cómo le resultaría más fácil hacerlo rápidamente? Ciertamente, puede abrir esos archivos uno por uno para reemplazar el mismo contenido, pero llevará mucho tiempo y será problemático. Este tutorial le mostrará una forma complicada de reemplazar el mismo contenido en varios documentos en Word a la vez.

Busque y reemplace textos en varios documentos de Word al mismo tiempo con el código VBA
Encuentre y reemplace fácilmente diferentes textos en múltiples documentos al mismo tiempo con Kutools para Word


Busque y reemplace textos en varios documentos de Word al mismo tiempo con el código VBA

1. Prensa otro + F11 para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadroMódulo, luego copie el siguiente código VBA en la ventana del Módulo.

Código VBA: buscar y reemplazar el mismo contenido en varios documentos a la vez

Sub CommandButton1_Click()
'Updated by Extendoffice 20180625
Dim xFileDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
Dim xFindStr As String
Dim xReplaceStr As String
Dim xDoc As Document
On Error Resume Next
Set xFileDialog = Application.FileDialog(msoFileDialogFilePicker)
With xFileDialog
    .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
    xFindStr = InputBox("Find what:", "Kutools for Word", xFindStr)
    xReplaceStr = InputBox("Replace with:", "Kutools for Word", xReplaceStr)
    For j = 1 To i Step 1
        Set xDoc = Documents.Open(FileName:=GetStr(j), Visible:=True)
        Windows(GetStr(j)).Activate
        Selection.Find.ClearFormatting
        Selection.Find.Replacement.ClearFormatting
        With Selection.Find
            .Text = xFindStr  'Find What
            .Replacement.Text = xReplaceStr  '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

3. presione el F5 clave para ejecutar el código.

4. En la apertura Explorar ventana, busque y seleccione los documentos que encontrará y reemplace el texto dentro, y luego haga clic en el OK botón. Ver captura de pantalla:

5. En el primero Kutools for Word cuadro de diálogo, introduzca el texto que encontrará en los documentos en el Encuentra lo que cuadro, y luego haga clic en el OK del botón.

6. En el segundo Kutools for Word cuadro de diálogo, ingrese el texto con el que reemplazará y haga clic en el OK del botón.

8. Haga clic en el OK botón en el siguiente cuadro de diálogo para finalizar la búsqueda y reemplazo.

En este caso, todas las palabras "Word" en los documentos seleccionados se reemplazan por "Excel" al mismo tiempo.


Encuentre y reemplace fácilmente diferentes textos en múltiples documentos al mismo tiempo con Kutools para Word

Aquí recomiendo encarecidamente el Buscar y reemplazar por lotes característica de Kutools for Word. Con esta función, puede encontrar y reemplazar fácilmente diferentes textos en varios documentos de Word al mismo tiempo. Veamos cómo aplicar esta función para buscar y reemplazar textos en documentos.

Kutools for Word : con más de 100 útiles complementos de Word, libre de probar sin limitación en 60 días.

1. Haga clic en Kutools Más > Buscar y reemplazar por lotes para habilitar la característica.

2. En el Buscar y reemplazar por lotes cuadro de diálogo, configure de la siguiente manera.

  • 2.1) Haga clic en Añadir fila botón debajo del Buscar y reemplazar lengüeta;
  • 2.2) En los campos de fila creados:
A. Introduzca el texto que encontrará en el cuadro de texto del Encuentre visión de conjunto
B. Ingrese el texto con el que reemplazará en el cuadro de texto en el Reemplaza columna;
C. Especifique un tipo de búsqueda, dónde encontrar el texto y un color para resaltar el texto que necesite. En este caso, selecciono Coincidencia de palabras completas, Documento principal y un cierto color del Tipo de búsqueda, Encuentre en y Destacar columnas;
  • 2.3) Repita los pasos 2.1 y 2.2 para agregar más textos que encontrará y reemplazará;
  • 2.4) Haga clic en  botón en el Tipo de Archivo sección para agregar los documentos de Word en los que encontrará y reemplazará textos;
  • 2.5) Haga clic en Reemplaza or Encuentre botón. Ver captura de pantalla:

Notas:
1. Si hace clic en el Encuentre , todos los resultados de la búsqueda se mostrarán bajo el Vista previa del resultado lengüeta. Después de obtener una vista previa de los resultados, si desea reemplazar todos los textos, haga clic en el Buscar y reemplazar lengüeta. De lo contrario, cierre el cuadro de diálogo.

2. Si hace clic en el Reemplaza , todos los textos especificados serán reemplazados por otros nuevos inmediatamente, y los resultados también se mostrarán debajo del Vista previa del resultado .

3. Si especifica colores de resaltado en el paso 2, todos los textos reemplazados se resaltarán con colores específicos, y podrá encontrarlos fácilmente de un vistazo en los documentos.

3. Cierra el Buscar y reemplazar por lotes caja de diálogo

Para obtener más información sobre esta función, haga clic aquí ....

Si desea tener una prueba gratuita de esta utilidad, vaya a descarga gratis el software primero, y luego vaya a aplicar la operación según los pasos anteriores.

Las mejores herramientas de productividad de oficina

Kutools for Word - Mejore su experiencia con Word con Over 100 ¡Características notables!

Sumérgete en las funciones resaltadas a continuación o haga clic aquí para explorar todo el poder de Kutools para Word.

📘 Dominio del documento: Dividir páginas  /  Combinar documentos  /  Exportar selección en varios formatos (PDF/TXT/DOC/XLSX)  /  Convertir por lotes a PDF  /  Exportar páginas como imágenes  /  Imprima varios archivos a la vez ...

Edición de contenidos: Buscar y reemplazar por lotes en varios archivos   /  Cambiar el tamaño de todas las imágenes   /  Transponer filas y columnas de tabla  /  Convertir tabla en texto ...

🧹 Limpieza sin esfuerzobarrer Espacios extra  /  Saltos de sección  /   Todos los encabezados  /  Cuadros de texto  /  Los hipervínculos  /  Para obtener más herramientas de eliminación, diríjase a nuestro grupo de eliminación

Inserciones creativas: recuadro Mil Separadores  /  Casillas de verificación  /  Botones de radio  /  Código QR   /  Barcode  /  Tabla de líneas diagonales  /  Título de la ecuación  /  Captura de imagen  /  Pie de tabla  /  Varias imágenes  /  Descubra más en nuestro Grupo Insertar

🔍 Selecciones de precisión: Identificar páginas específicas  /  tablas  /  formas  /  párrafos de encabezado  /  Navega con facilidad usando nuestro Grupo Selecto

Mejoras de estrellas: Navegue rápidamente a cualquier ubicación  /  insertar automáticamente texto repetitivo  /  alternar sin problemas entre ventanas de documentos  /  11 herramientas de conversión ...

Transforma tus tareas de Word con Kutools. 👉 Descargue con prueba de 30 días ahora 🚀.

 
Comments (70)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
thanks for -How To Search And Replace Across Multiple Files In Word?

what about from out side (by folder) ?

thanks gain
This comment was minimized by the moderator on the site
This is a great explanation.  Is there a way to change settings, e.g. page size, simultaneously? 
This comment was minimized by the moderator on the site
After pressing F5, I get the following error" "Compile error: User-defined type not defined." Can someone help?
This comment was minimized by the moderator on the site
Hi Monique,Please check if the Microsoft Office Object Library is enabled as shown in the screenshot below.
This comment was minimized by the moderator on the site
This is SUCH a time saving solution. THANK YOU!
One thing that may make it even better, is adding support for subdirectories. (That is: Files in multiple subdirectories)
I am an absolute newbie in this, and don't know the syntax, the parameter, or where to add that.

Could somebody help?
This comment was minimized by the moderator on the site
I need to replace text in multiple Word files and have the replaced text highlighted. Is there a way to do this?
This comment was minimized by the moderator on the site
Hi Daphne,
Why not try the Batch Find and Replace feature of Kutools for Word? It can solve this issue with ease.
This comment was minimized by the moderator on the site
this was a lifesaver thank you so much
This comment was minimized by the moderator on the site
Is it possible to replace in the headers of the word doc?
This comment was minimized by the moderator on the site
Hi Tiago,
Please apply the below VBA code to include the content of headers and footers when finding and replacing texts in multiple documents at once.

Sub CommandButton1_Click()
'Updated by Extendoffice 20180625
Dim xFileDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
Dim xFindStr As String
Dim xReplaceStr As String
Dim xDoc As Document
On Error Resume Next
Set xFileDialog = Application.FileDialog(msoFileDialogFilePicker)
With xFileDialog
.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
xFindStr = InputBox("Find what:", "Kutools for Word", xFindStr)
xReplaceStr = InputBox("Replace with:", "Kutools for Word", xReplaceStr)
For j = 1 To i Step 1
Set xDoc = Documents.Open(FileName:=GetStr(j), Visible:=True)
Windows(GetStr(j)).Activate
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = xFindStr 'Find What
.Replacement.Text = xReplaceStr '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"
If MsgBox("Do you want to replace texts in headers and footers too? ", vbYesNo, "Kutools for Word") = vbYes Then
ActiveWindow.View.SplitSpecial = wdPanePrimaryFooter
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
ActiveWindow.View.SplitSpecial = wdPanePrimaryHeader
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
End If
ActiveDocument.Save
ActiveWindow.Close
Next
Application.ScreenUpdating = True
End With
MsgBox "Operation end, please view", vbInformation
End Sub
This comment was minimized by the moderator on the site
Is that possible to replace in the header of the word doc?
This comment was minimized by the moderator on the site
Thanks for sharing this information with us.
Word search and replace tool
This comment was minimized by the moderator on the site
Works perfectly but is there a similar macro to change text in the header! because this does not work with this version!
thanks
This comment was minimized by the moderator on the site
Hi,
Please apply the below VBA code to include the content of headers and footers when finding and replacing texts in multiple documents at once.

Sub CommandButton1_Click()
'Updated by Extendoffice 20180625
Dim xFileDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code
Dim xFindStr As String
Dim xReplaceStr As String
Dim xDoc As Document
On Error Resume Next
Set xFileDialog = Application.FileDialog(msoFileDialogFilePicker)
With xFileDialog
.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
xFindStr = InputBox("Find what:", "Kutools for Word", xFindStr)
xReplaceStr = InputBox("Replace with:", "Kutools for Word", xReplaceStr)
For j = 1 To i Step 1
Set xDoc = Documents.Open(FileName:=GetStr(j), Visible:=True)
Windows(GetStr(j)).Activate
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = xFindStr 'Find What
.Replacement.Text = xReplaceStr '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"
If MsgBox("Do you want to replace texts in headers and footers too? ", vbYesNo, "Kutools for Word") = vbYes Then
ActiveWindow.View.SplitSpecial = wdPanePrimaryFooter
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
ActiveWindow.View.SplitSpecial = wdPanePrimaryHeader
Selection.Find.Execute Replace:=wdReplaceAll
Application.Run macroname:="NEWMACROS"
End If
ActiveDocument.Save
ActiveWindow.Close
Next
Application.ScreenUpdating = True
End With
MsgBox "Operation end, please view", vbInformation
End Sub
This comment was minimized by the moderator on the site
Oh yeah! Thank you sooooo much! This is a life-saver!
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations