En Word, en lugar de buscar y reemplazar, ¿cómo puedo agregar una función a un documento de Word donde puedo cambiar el nombre de una empresa una vez y actualiza automáticamente cada instancia de ese nombre en todo el documento?

Hola y gracias por el A2A.

Hay varias maneras de hacerlo, dependiendo exactamente de cómo desee que se actualice el nombre de la Compañía:

– Puede usar una de las propiedades de documento predefinidas. Hay una llamada “Compañía”, que funcionaría muy bien. Cada vez que ingresa el nombre de la empresa, en lugar de solo escribirlo, vaya a Insertar -> Propiedades rápidas -> Propiedad del documento y luego seleccione “Empresa”. Ahora todo lo que tiene que hacer es completar ese campo una vez y, ZAP, todas las demás instancias de ese mismo campo en el mismo documento se actualizarán instantáneamente.

– Esto no funcionará si tiene múltiples nombres de compañías diferentes. Pero puede usar marcadores y campos de referencia para planificar un efecto similar pero más flexible. Marque la primera instancia del nombre de una compañía y márquela como marcador (Insertar -> Marcador). Dale al marcador un nombre como “Empresa_1”. Cuidado: no puede usar espacios en un nombre de marcador. Haga lo mismo con la primera aparición del nombre de la segunda compañía, etc. Ahora, en todos los demás lugares, el nombre de cada compañía debe aparecer en todo el documento, en lugar de escribir el nombre de la compañía, inserte un campo “Ref”. Ref = “Referencia”. Insertar -> Piezas rápidas -> Campo y desplazarse hasta encontrar “ref”. Una vez que seleccione “ref”, puede elegir lo que debe contener el campo “ref”. Convenientemente, enumera todos los marcadores que encuentra en el documento. Elija Company_1 o cualquiera que sea el nombre del marcador que seleccionó, y ahí lo tiene. El único inconveniente de este procedimiento es que si cambia el nombre de la compañía en el marcador, los campos de referencia no se actualizan automáticamente. Pero lo hacen si imprime o incluso si hace una vista previa de impresión, por lo que no es tan malo.

Estos campos de ref son bastante útiles.

Aquí hay un programa de Visual Basic que hará lo que usted desee que he usado en el pasado. Reemplace el texto de búsqueda y reemplace el texto en la subrutina antes de ejecutar.

Sub FindReplaceAllInDoc ()
Dim i As Integer
Documento oscuro como documento
Dim Rng As Range

Set doc = ThisDocument
Para cada rng En doc.StoryRanges
Con Rng.Encontrar
.Formato claro
.Replacement.ClearFormatting
.Text = “
.Replacement.Text = “

.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Ejecute Reemplazar: = wdReplaceAll
Terminar con
Siguiente rng
doc.Guardar
doc.Close

Establecer rng = Nada
Establecer doc = Nada

End Sub

Lo que estás buscando es insertar> campo.
Hay campos incorporados como el nombre del autor, las fechas, el autor, etc.
Puede crear un campo personalizado y luego cambiar el valor para reflejarlo en todo el documento.