Ciao a tutt*, e grazie di avermi fatto entrare nella ML!
La macro sotto gli asterischi ha lo scopo di suddividere un testo scritto
in un unico paragrafo in più paragrafi secondo alcune regole.
Però incontro due problemi:
1° PROBLEMA:
Come l'ho scritta verifica la presenza del carattere ",", separa il
paragrafo mettendoci un 'a capo' ... e poi prosegue col paragrafo
successivo, senza controllare il pezzo a destra della separazione (che
vorrei fosse considerato il successivo paragrafo da processare).
Come si può fare? Sarebbe meglio fare una procedura ricorsiva?
2° PROBLEMA:
Se eseguo diverse volte la macro, alla fine una finestra di dialogo mi dice:
"Operazione non supportata.
Chiamata di procedura non valida".
Questa è la macro:
************************************************************************************************
Dim LUNGMINSUB,LUNGMAXSUB as Integer
Sub Main()
LUNGMINSUB = 21
LUNGMAXSUB = 75
call punteggiatura(",")
end sub
Sub Punteggiatura(sPunto)
Dim Doc As Object
Dim Enum As Object
Dim TextElement As Object
Doc = ThisComponent
Enum = Doc.Text.createEnumeration
While Enum.hasMoreElements
TextElement = Enum.nextElement
If TextElement.supportsService("
com.sun.star.text.Paragraph") Then
if len(TextElement.String) > LUNGMAXSUB and
Instr(LUNGMINSUB,TextElement.String, sPunto) then
TextElement.String =
Left(TextElement.String,Instr(LUNGMINSUB,TextElement.String, sPunto)) &
Chr(13) &_
Right(TextElement.String,len(TextElement.String)-Instr(LUNGMINSUB,TextElement.String,
sPunto)-1)
end if
End if
Wend
End Sub
******************************************************************************************
Potete provare ad applicarla al seguente testo:
Fino a quando qualcuno non si è accorto che, con l'addomesticamento delle
piante prima e la coltivazione poi, potevamo avere cibo in abbondanza per
tutto il periodo dell'anno, quindi questa grossa rivoluzione ha risolto un
problema importantissimo come quello del cibo.
Il risultato desiderato è
Fino a quando qualcuno non si è accorto che,
con l'addomesticamento delle piante prima e la coltivazione poi,
potevamo avere cibo in abbondanza per tutto il periodo dell'anno,
quindi questa grossa rivoluzione ha risolto un problema importantissimo
come quello del cibo.
mentre ora fa:
Fino a quando qualcuno non si è accorto che,
con l'addomesticamento delle piante prima e la coltivazione poi, potevamo
avere cibo in abbondanza per tutto il periodo dell'anno, quindi questa
grossa rivoluzione ha risolto un problema importantissimo come quello del
cibo.
Grazie fin d'ora del vostro tempo!
Michele
--
Come cancellarsi: E-mail users+unsubscribe@it.libreoffice.org
Problemi? http://it.libreoffice.org/supporto/mailing-lists/come-cancellarsi/
Linee guida per postare + altro: http://wiki.documentfoundation.org/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
Context
- [it-users] Problemi con macro segmentazione testo · michele gianella
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.