Word Find & Replace
Word Find & Replace
Sección titulada «Word Find & Replace»Tipo: word-find-replace · Paquete: Word Activities v1.0.4 · Salida: int
Busca un texto y lo reemplaza en todo el documento. Es la base del patrón de plantillas: tomas un .docx con marcadores ({NOMBRE}, {FECHA}) y los reemplazas con datos reales para generar documentos personalizados.
Cómo funciona
Sección titulada «Cómo funciona»Reemplaza todas las apariciones de find por replace en el cuerpo del documento, incluidas las tablas. Por defecto no distingue mayúsculas (caseSensitive = false). Acepta session o path — ver los dos modos:
- Con
path: abre el archivo, reemplaza y lo guarda en la misma ruta automáticamente (aunque no haya habido reemplazos). - Con
session(o dentro de unbody): reemplaza en memoria; guarda después con Word Save.
Lo que conviene saber:
- Fragmentos de texto: Word guarda el texto en fragmentos según el formato. La búsqueda se hace dentro de cada fragmento, así que un marcador con formato mezclado (por ejemplo, la mitad en negrita) o que Word partió al corregir ortografía no se encuentra. Escribe los marcadores de una sola vez y con un único formato; si uno no se reemplaza, bórralo y vuelve a escribirlo completo.
- Alcance: solo el cuerpo del documento; los encabezados y pies de página no se modifican.
- Formato: el texto nuevo conserva el formato del fragmento donde estaba el marcador.
caseSensitivese marca en el editor; no admite expresiones.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
find | string | — | Texto a buscar. No puede estar vacío. |
replace | string | — | Texto de reemplazo. Si la expresión da vacío, el marcador se borra. |
Parámetros opcionales
Sección titulada «Parámetros opcionales»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
session | ZoanWordSession | — | Sesión de Word Open (en vez de path). Dentro de un body se hereda automáticamente. |
path | string | — | Ruta al .docx (modo rápido: abre, modifica y guarda solo). Se usa solo si no hay sesión. |
caseSensitive | bool | false | Distinguir mayúsculas y minúsculas. |
Devuelve un int con el número de fragmentos de texto modificados. Si un mismo fragmento contiene el marcador varias veces, todas se reemplazan pero cuentan como uno. Úsalo para comprobar si hubo cambios: 0 significa que el texto no se encontró.
Ejemplo
Sección titulada «Ejemplo»Rellenar una plantilla de carta con varios marcadores:
Copy File source = asset("plantilla.docx") destination = rutaCarta overwrite = trueWord Open path = rutaCarta └─ body: Word Find & Replace find = "{NOMBRE}" replace = cliente.nombre → output: n Word Find & Replace find = "{FECHA}" replace = today().ToString("dd/MM/yyyy") Word Find & Replace find = "{MONTO}" replace = str(monto) Word SaveIf condition = n == 0 └─ then: Log level = warning message = "La plantilla no tiene el marcador {NOMBRE}"Errores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
Indica 'session' o 'path'. | No hay sesión ni ruta. Pasa path o usa la actividad dentro de un body de Word Open/Create. |
No se encontró el archivo. | La ruta de path no existe en la máquina del robot. |
'find' es obligatorio. | find está vacío. |
Error de acceso al guardar (modo path) | El archivo está abierto en Word u otro programa, o no hay permisos de escritura. |
Actividades relacionadas
Sección titulada «Actividades relacionadas»- Word Read Text — leer el documento.
- Word to PDF — convertir la carta rellenada a PDF.
- Copy File — duplicar la plantilla antes de rellenarla.