¿Cómo buscar y reemplazar varios textos en Word utilizando Excel?
AutorXiaoyang•Fecha de modificación
En Microsoft Word, la función Buscar y reemplazar es una forma eficaz de localizar y sustituir rápidamente texto específico. Sin embargo, cuando necesitas reemplazar varios términos distintos, introducir cada uno manualmente puede volverse tedioso.
Para agilizar este proceso, puede utilizar Excel para crear una lista con los textos que desea buscar y reemplazar, y luego automatizar la tarea mediante un sencillo código VBA. Este tutorial le guiará paso a paso en el uso de Excel y VBA para buscar y reemplazar múltiples textos dentro de un único documento de Word. Además, le mostraremos cómo ampliar este procedimiento a varios documentos e introduciremos una potente función de Kutools para el reemplazo masivo de texto.
Buscar y reemplazar varios textos en un documento de Word desde Excel con código VBA
Si desea buscar y reemplazar texto en un único archivo de Word, el siguiente código VBA le será de gran ayuda.
1. En la hoja de Excel, cree una columna con los textos que desea buscar y reemplazar, y otra con los textos por los que quiere sustituirlos, tal como se muestra en la siguiente captura de pantalla. A continuación, pulse simultáneamente las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. A continuación, haz clic en Insertar > Módulo y copia y pega el siguiente código VBA en la ventana.
Código VBA: Buscar y reemplazar varios textos en un archivo de Word
Sub replace_texts_range_of_cells()
'Updateby ExtendOffice
Dim xWordApp As Word.Application
Dim xDoc As Word.Document
Dim xRng As Range
Dim I As Integer
Dim xFileDlg As FileDialog
On Error GoTo ExitSub
Set xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
xFileDlg.AllowMultiSelect = False
xFileDlg.Filters.Add "Word Document", "*.docx; *.doc; *.docm"
xFileDlg.FilterIndex = 2
If xFileDlg.Show <> -1 Then GoTo ExitSub
Set xRng = Application.InputBox("Please select the lists of find and replace texts (Press Ctrl key to select two same size ranges):", "Kutools for Excel", , , , , , 8)
If xRng.Areas.Count <> 2 Then
MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size.", vbInformation + vbOKOnly, "Kutools for Excel"
GoTo ExitSub
End If
If (xRng.Areas.Item(1).Rows.Count <> xRng.Areas.Item(2).Rows.Count) Or _
(xRng.Areas.Item(1).Columns.Count <> xRng.Areas.Item(2).Columns.Count) Then
MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size.", vbInformation + vbOKOnly, "Kutools for Excel"
GoTo ExitSub
End If
Set xWordApp = CreateObject("Word.application")
xWordApp.Visible = True
Set xDoc = xWordApp.Documents.Open(xFileDlg.SelectedItems.Item(1))
For I = 1 To xRng.Areas.Item(1).Cells.Count
With xDoc.Application.Selection.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = xRng.Areas.Item(1).Cells.Item(I).Value
.Replacement.Text = xRng.Areas.Item(2).Cells.Item(I).Value
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
xDoc.Application.Selection.Find.Execute Replace:=wdReplaceAll
Next
ExitSub:
Set xRng = Nothing
Set xFileDlg = Nothing
Set xWordApp = Nothing
Set xDoc = Nothing
End Sub
3. Tras pegar el código, permanezca en la ventana de Microsoft Visual Basic para Aplicaciones y haga clic en Herramientas > Referencias. Consulte la captura de pantalla:
4. En el cuadro de diálogo emergente Referencias: VBAProject, seleccione en la lista la opción Microsoft Word 16,0 Object Library. Consulte la captura de pantalla:
5. Haga clic en el botón Aceptar para cerrar el cuadro de diálogo y, a continuación, pulse la tecla F5 para ejecutar este código. En la ventana emergente Examinar, seleccione el archivo de Word en el que desea reemplazar los textos. Consulte la captura de pantalla:
6. A continuación, haga clic en Aceptar y, en el cuadro de diálogo siguiente, mantenga pulsada la tecla Ctrl para seleccionar por separado las celdas de Texto original y Texto nuevo que desee utilizar. Consulte la captura de pantalla:
7. A continuación, haga clic en el botón Aceptar y los textos se buscarán y reemplazarán por el texto nuevo en el documento especificado. Asimismo, el archivo se abrirá automáticamente; recuerde guardarlo para conservar los cambios.
Buscar y reemplazar varios textos en varios documentos de Word desde Excel con código VBA
También he creado un código VBA que le ayudará a buscar y reemplazar varios textos en múltiples documentos de Word. Siga estos pasos:
1. Abra el archivo de Excel que contiene dos columnas con los valores a reemplazar y sus correspondientes valores de reemplazo, tal como se muestra en la siguiente captura de pantalla, y pulse simultáneamente las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. A continuación, haga clic en Insertar>Móduloy copie y pegue el siguiente código VBA en la ventana.
Código VBA: Buscar y reemplazar varios textos en varios archivos de Word
Sub FindReplaceAcrossMultipleWordDocuments()
'Updateby ExtendOffice
Dim xWordApp As Word.Application
Dim xDoc As Word.Document
Dim xRng As Range
Dim I As Integer
Dim xFolderDlg As FileDialog
Dim xFSO As Scripting.FileSystemObject
Dim xFile As File
On Error GoTo ExitSub
Set xFolderDlg = Application.FileDialog(msoFileDialogFolderPicker)
If xFolderDlg.Show <> -1 Then GoTo ExitSub
Set xRng = Application.InputBox("Please select the lists of find and replace texts (Press Ctrl key to select two same size ranges", "Kutools for Excel", , , , , , 8)
If xRng.Areas.Count <> 2 Then
MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size", vbInformation + vbOKOnly, "Kutools for Excel"
GoTo ExitSub
End If
If (xRng.Areas.Item(1).Rows.Count <> xRng.Areas.Item(2).Rows.Count) Or _
(xRng.Areas.Item(1).Columns.Count <> xRng.Areas.Item(2).Columns.Count) Then
MsgBox "Please select two columns (press Ctrl key), the two ranges have the same size.", vbInformation + vbOKOnly, "Kutools for Excel"
GoTo ExitSub
End If
Set xFSO = New Scripting.FileSystemObject
Set xWordApp = CreateObject("Word.application")
xWordApp.Visible = True
For Each xFile In xFSO.GetFolder(xFolderDlg.SelectedItems(1)).Files
If VBA.InStr(xFile.Type, "Microsoft Word") > 0 Then
Set xDoc = xWordApp.Documents.Open(xFile.Path)
For I = 1 To xRng.Areas.Item(1).Cells.Count
With xDoc.Application.Selection.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = xRng.Areas.Item(1).Cells.Item(I).Value
.Replacement.Text = xRng.Areas.Item(2).Cells.Item(I).Value
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
xDoc.Application.Selection.Find.Execute Replace:=wdReplaceAll
Next
xDoc.Close wdSaveChanges
End If
Next
xWordApp.Quit
MsgBox "The Find and Replace has been completed", vbInformation + vbOKOnly, "Kutools for Excel"
ExitSub:
Set xRng = Nothing
Set xFolderDlg = Nothing
Set xWordApp = Nothing
Set xDoc = Nothing
End Sub
3. En la ventana de Microsoft Visual Basic para Aplicaciones, haga clic en Herramientas > Referencias. En el cuadro de diálogo Referencias: VBAProject, seleccione en el cuadro de lista las opciones Microsoft Word 16,0 Object Library y Microsoft Scripting Runtime. Consulte la captura de pantalla:
4. Tras marcar ambas opciones, haga clic en Aceptar para cerrar el cuadro de diálogo y, a continuación, pulse la tecla F5 para ejecutar este código. En la ventana emergente Examinar, elija una carpeta que contenga los documentos de Word en los que desea realizar la operación de Buscar y reemplazar. Consulte la captura de pantalla:
5. Haga clic en el botón Aceptar y, en el cuadro de diálogo emergente, mantenga pulsada la tecla Ctrl para seleccionar por separado las columnas de Texto original y Texto nuevo que desee utilizar; consulte la captura de pantalla:
6. Por último, haga clic en Aceptar y los textos originales se reemplazarán por los nuevos en todos estos archivos. Al finalizar, aparecerá un cuadro de diálogo como el que se muestra en la siguiente captura de pantalla:
7. Haga clic en Aceptar para cerrar el cuadro de diálogo. A continuación, podrá abrir los archivos para comprobar los resultados obtenidos.
Buscar y reemplazar varios textos en varios documentos de Word con una función avanzada
En esta sección te explicaré cómo buscar y reemplazar texto en lote en varios documentos de Word utilizando el propio Word, en lugar de Excel. Gracias a la potente función Kutools para Word, podrás buscar eficazmente textos específicos y reemplazarlos por otros nuevos tanto en el cuerpo principal como en encabezados, pies de página, comentarios, etc., ¡e incluso resaltar los resultados si lo deseas!
Kutools para Word
Kutools para Word le permite gestionar sus tareas diarias con documentos de forma más rápida, gracias a herramientas prácticas integradas directamente en Microsoft Word: sin necesidad de programación ni configuraciones complejas.
Redacción, corrección, traducción y resumen con IA
Buscar y reemplazar en lote en todos los documentos
1. Abra un archivo de Word y, a continuación, haga clic en KUTOOLS PLUS > Buscar y reemplazar en lote. Consulte la captura de pantalla:
2. En el cuadro de diálogo Buscar y reemplazar en lote que se abre, realice las siguientes operaciones:
Haga clic en el botón Agregarpara añadir los archivos de Word en los que desea Buscar y reemplazar textos;
En el panel izquierdo, haga clic en Agregar filadesde la parte superior de Cinta de opciones;
En el campo insertado, introduzca el texto original y el texto nuevo en las columnas Buscar y Reemplazar, respectivamente, según los textos que desee buscar y reemplazar. Asimismo, puede especificar un color para resaltar los textos reemplazados según sus necesidades.
3. Tras definir los criterios de búsqueda, haga clic en el botón Reemplazar para acceder a la pestaña Vista previa de resultados y ver los resultados de la operación de Buscar y reemplazar. Consulte la captura de pantalla:
4. A continuación, haga clic en el botón Cerrar y aparecerá un cuadro de diálogo que le preguntará si desea guardar este escenario. Haga clic en Sí para guardarlo o en No para ignorarlo. Consulte la captura de pantalla:
Consejos: Esta función también le permite realizar las siguientes operaciones:
Buscar y reemplazar caracteres especiales en varios documentos de Word;
Buscar y reemplazar varias cadenas con formato específico en varios documentos de Word;
Buscar y reemplazar múltiples cadenas en varios archivos TXT, HTM o HTML.
Haga más en menos tiempo con Kutools para Word potenciado por IA
Kutools para Word no es solo un conjunto de herramientas; es una solución inteligente diseñada para potenciar su productividad. Gracias a sus capacidades impulsadas por IA y a las funciones más esenciales, Kutools le permite lograr más en menos tiempo:
Resuma, reescriba, redacte y traduzca contenido al instante.
Corrija textos en tiempo real con sugerencias de gramática, puntuación y estilo mientras escribe.
Reformule y traduzca el contenido manteniendo intactos el diseño, el estilo y la estructura.
Traduzca su contenido a más de 40 idiomas con facilidad y amplíe su alcance a nivel global.
Obtenga ayuda inmediata e información inteligente basada en el contenido de su Documento Actual.
Pregunte cómo realizar una tarea —como eliminar un salto de sección— y la IA le guiará o lo hará por usted.
Redacte información confidencial o sensible en segundos y garantice una privacidad absoluta.
Todas las herramientas funcionan a la perfección en Word, siempre al alcance de tu mano.
Cree, perfeccione, traduzca, resuma y proteja documentos con total facilidad.
Mejore su gramática, claridad y tono mientras escribe, en tiempo real.
Reformule y traduzca el contenido sin modificar el diseño ni el formato.
Pregunte cómo realizar una tarea, como eliminar un salto de sección, y la IA le guiará o lo hará por usted.
Todas las herramientas funcionan a la perfección dentro de Word, siempre al alcance de tu mano.
Use Kutools en su idioma preferido: compatible con inglés, español, alemán, francés, chino y 40+ más idiomas.¡
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
Un instalador, una licencia— configuración en minutos (compatible con MSI)
Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
La mejor relación calidad-precio— ahorre frente a la compra individual de complementos