Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Buenos días.
Quizá es medio básico pero no estaría encontrando como. Estaría necesitando un macro de Writer que busque ciertas palabras o expresiones en un documento, si las encuentra que las resalte y que luego de buscar muestre un mensaje con un botón de "Aceptar" que diga, por ejemplo "Se han encontrado palabras a modificar".
Y si pudiera tener un contador de cuantas veces se corrió la Macro mejor.
Desde ya muchas gracias por su colaboración.
Quizá es medio básico pero no estaría encontrando como. Estaría necesitando un macro de Writer que busque ciertas palabras o expresiones en un documento, si las encuentra que las resalte y que luego de buscar muestre un mensaje con un botón de "Aceptar" que diga, por ejemplo "Se han encontrado palabras a modificar".
Y si pudiera tener un contador de cuantas veces se corrió la Macro mejor.
Desde ya muchas gracias por su colaboración.
OpenOffice Versi??n: 5.4.4.2 Windows 7 Professional Service Pack 1
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
¿Quiere buscar las mismas palabras cada vez? ¿Cuántas son?
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Las mismas palabras cada vez y son al rededor de 30 solas y en expresiones. Por ejemplo "Nro" y "dirección contraria".
OpenOffice Versi??n: 5.4.4.2 Windows 7 Professional Service Pack 1
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
La macro en el archivo adjunto busca las cadenas "Nro" y "dirección contraria". Puede añadir palabras a la lista, separando las con |.
Código: Seleccionar todo
Sub BuscarTexto
oSDesc = ThisComponent.createSearchDescriptor()
oSDesc.SearchString = "Nro|dirección contraria"
oSDesc.SearchRegularExpression = TRUE
oFound = ThisComponent.findAll(oSDesc)
If oFound.Count > 0 Then
ThisComponent.CurrentController.select(oFound)
End If
print "Se han encontrado " & oFound.Count & " palabras a modificar"
End Sub
- Adjuntos
-
- BuscarCadenas.odt
- (16.04 KiB) Descargado 163 veces
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Si no entiendo mal lo que faltaría ahí sería lo de remarcarlos, no? Muchas gracias!
OpenOffice Versi??n: 5.4.4.2 Windows 7 Professional Service Pack 1
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
¿De qué manera quiere remarcarlos?
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Resaltando el fondo de las palabras encontradas en amarillo, como si estuviera usando el "Color de resalte de caracteres"
OpenOffice Versi??n: 5.4.4.2 Windows 7 Professional Service Pack 1
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Código: Seleccionar todo
Sub BuscarTexto
oSDesc = ThisComponent.createSearchDescriptor()
oSDesc.SearchString = "Nro|dirección contraria"
oSDesc.SearchRegularExpression = TRUE
oFound = ThisComponent.findAll(oSDesc)
If oFound.Count > 0 Then
Cnt = oFound.getCount()
for i = 0 to (Cnt - 1)
Txt = oFound.getByIndex(i)
Txt.CharBackColor = 16776960
next i
End If
print "Se han encontrado " & oFound.Count & " palabras a modificar"
End Sub
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Muchas gracias y disculpas por la demora de la respuesta.
Recién ahora pude probar la macro y me surgió la duda si hay posibilidad de que la búsqueda de palabras discrimine entre mayúsculas y minúsculas.
Recién ahora pude probar la macro y me surgió la duda si hay posibilidad de que la búsqueda de palabras discrimine entre mayúsculas y minúsculas.
OpenOffice Versi??n: 5.4.4.2 Windows 7 Professional Service Pack 1
Re: Buscar cadenas de texto, resaltarlas y enviar un mensaje.
Código: Seleccionar todo
Sub BuscarTexto
oSDesc = ThisComponent.createSearchDescriptor()
oSDesc.SearchString = "Nro|dirección contraria"
oSDesc.SearchCaseSensitive = TRUE '<- descriminar entre mayúsculas y minúsculas #####
oSDesc.SearchRegularExpression = TRUE
oFound = ThisComponent.findAll(oSDesc)
If oFound.Count > 0 Then
Cnt = oFound.getCount()
for i = 0 to (Cnt - 1)
Txt = oFound.getByIndex(i)
Txt.CharBackColor = 16776960
next i
End If
print "Se han encontrado " & oFound.Count & " palabras a modificar"
End Sub