jetzt muss ich mich doch noch mal hilfesuchend an euch wenden. Was ich auch gerne mache, da ihr mir bisher schon super geholfen habt.

Diesmal habe ich folgendes Problem:
Ich möchte von einem Programm aus (Lotus Notes) ein OpenOffice Dokument öffnen, einen bestimmten Bereich anspringen, den dort enthaltenen Inhalt löschen und anschließend neuen Inhalt an diese Stelle einfügen.
Mein OpenOffice Dokument ist dazu in einzelne Bereiche unterteilt, die ich auch namentlich ansprechen kann.
Code: Alles auswählen
textSection = OOoObjDok.TextSections.getByName(<MeinBereichsname>)
Code: Alles auswählen
textSectionCursor = OOoObjDok.Text.CreateTextCursorByRange (textSection.Anchor)
textSectionCursor.insertDocumentFromUrl (<DokumentMitNeuemInhalt>, args)
Jetzt fehlt nur noch das Markieren des Inhalts dieses Abschnitts und das Löschen des markierten Teils.
Meine bisherigen Versuche mit RemoveTextContent haben dazu geführt, dass nur der Bereich entfernt wurde, aber der Inhalt blieb erhalten.
Und über den Dispatcher Uno:Delete hatte ich auch keinen Erfolg (Fehler: automation object argument type mismatch).
So versuche ich zu markieren:
Code: Alles auswählen
' TextCursor in Bereich setzen
textSectionCursor = OOoObjDok.Text.CreateTextCursorByRange (textSection.Anchor)
' Bereich markieren
textSectionCursor.gotoEnd(True)
Code: Alles auswählen
OOoObjDok.Text.removeTextContent(textSection)
Code: Alles auswählen
OOoDispatcher = serviceManagerObj.createInstance("com.sun.star.frame.DispatchHelper")
OOoDispatcher.executeDispatch(textSectionCursor, ".uno:Delete", "", 0, args)
args enthält jeweils eine Dummy-Werteliste (["Dummy!"], [0])
Vielen Dank im Voraus für eure Ideen!
Petra