Página 1 de 1

Procesamiento de texto de writer mediante macros

Publicado: Vie Dic 16, 2016 1:37 am
por Gama
Hola! antes que nada, que buen foro!

Recurro a sus ustedes ya que estoy tratando de hacer una macro usando Basic en la cual pueda recuperar el texto que se tenga en las hojas de writer, lo que debo de hacer es recuperar esta información por hoja (numero de hoja), por párrafo y por linea para después poder procesar esta ultima por caracteres, me he informado que existen módulos que prestan estos servicios pero no se cuales necesite, ni como usarlos.

Lo único que he conseguido es como editar el texto de una hoja de writer pero no me sirve de mucho ya que lo que necesito es obtener el texto como cadena.

gracias de antemano.

Re: Procesamiento de texto de writer mediante macros

Publicado: Vie Dic 16, 2016 7:15 pm
por FJCC-ES
Esta macro guarda el texto de cada párrafo en una matriz. Es más difícil guardar el texto de cada linea o página porque el texto es una colección de párrafos. Se muestran lineas en la pantalla pero la estructura del texto consiste de párrafos.

Código: Seleccionar todo

DocInfo = ThisComponent.DocumentInfo
DocStats = DocInfo.DocumentStatistic
for i = UBOUND(DocStats) to 0 step -1
	Element = DocStats(i)
	If Element.Name = "ParagraphCount" Then
		NumParraf = Element.Value
	End If
next i
Dim P(NumParraf - 1) As String

P_Enum = ThisComponent.Text.createEnumeration()
j = 0
While P_Enum.hasMoreElements()
	Parrafo = P_Enum.nextElement()
	if Parrafo.String <> "" Then
		P(j) = Parrafo.String
	j = j + 1
	End If
Wend

Re: Procesamiento de texto de writer mediante macros

Publicado: Dom Dic 18, 2016 1:39 am
por Gama
Muchas gracias, ahora lo pruebo. Una cosa más como puedo acceder a los párrafos de una página en específico o algún documento que me recomiendes para poder entender este tipo de propiedades de un documento de writer ya que también debo obtener saltos de línea, tablas con número de filas y columnas, viñetas, e imágenes entre otras cosas.