Ciao a *!

Ho due problemi con la macro qui sotto.
Lo scopo è quello di suddividere un testo scritto in un unico paragrafo in più paragrafi secondo alcune regole.

1° PROBLEMA:
Come l'ho scritta verifica la presenza del carattere ",", separa il paragrafo mettendoci un 'a capo' e poi prosegua con il paragrafo successivo, senza controllare il pezzo a destra della separazione (che è diventato un nuovo paragrafo). Come si può fare? Sarebbe meglio fare una procedura ricorsiva (non saprei come)?

2° PROBLEMA:
Se eseguo diverse volte la macro, alla fine TextElement.String mi da Out-of-scope.

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:

Per procurarsi queste delizie i nostri antenati erano dediti al nomadismo, facevano grossi spostamenti, estenuanti ricerche e impiegavano tutto il loro tempo a raccogliere il cibo. Ok, ogni tanto facevano anche qualche battuta di caccia e quando andava bene abbiamo inventato la festa. 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 mille!!!
--
MC

Rispondere a