Hey Stephan,
kann es sein, dass Du das völlig falsch angehest?
Ich schätze, Du willst den Inhalt des kompletten Paragraphen ausgeben, der teilweise markiert ist?
liefert Dir "3 " bei den zwei Markierungen: 0. Texttabelle 1. Teil-Absatz 1, 2. Teil-Absatz innerhalb des Paragrafen Tabelle-Abs2.
Die Teile musst Du anders aufdröseln. Auch ein normaler Absatz unterstützt übrigens den Service ""com.sun.star.text.TextTable" - auch die Unterscheidung Deiner If-Liste ist nicht wirklich zielführend;)
Absätze oder Absatzteile, die Teil einer Tabelle sind, bei denen ist die Eigenschaft "TextTables" nicht leer - sondern beinhaltet das Objekt der Tabelle. Ich schätze, über den Weg müsstest Du gehen.
Also:
- Auswerten der Selektionsobjekte über Deine For-Schleife
- evt. Speichern der Texttabelle (Name) in Selektion 0
- Prüfen, ob die Selektion Teil der Tabelle ist - dann musst Du sicher anders vorgehen
- ansonsten - Ausgabe des Textes nach Enumeration.
Prüfst Du Deinen Code mit xray (oder so), gibt es viele "Merkwürdigkeiten:
Selektion 0 - keine Aktion , da String nicht vorhanden.
Selektion 1 - Dein Abs1 - Enumeration - liefert Abs. 1 (würde auch mit Abs 2 gehen;))
Selektion 2 - liefert den Teilstring innerhalb der Tabelle - die Enumeration aber liefert die Tabelle - und dann wohl alle Zellen etc. Warum irgendwann die weiteren Absätze folgen, kann ich Dir auch nicht sagen.
Wie gesagt - ich glaube, da musst Du anders vorgehen.
Viele Grüße
Tom