Hallo,

endlich klappt es, dass ich in einem Text die Tabellen per Makro 
durchstreichen kann.
Aber ist das, so wie ich es mache auch geschickt?

Ich definiere einen ViewCursor 
        (ViewCursor weil die Methode JumpToPage() für den TextCursor nicht zur 
        Verfügung steht)
und einen Punkt. An der Position Punkt wird die Linie gezeichnet.

An meiner Lösung stört mich, dass die Werte für Point immer per Ausprobieren 
ermittelt werden müssen.

Meine Linie soll ja immer über einer Tabelle, bzw. Tabellenzelle liegen.
Wie also kann ich eine Tabelle bzw. Tabellenzelle an einen Cursor binden, 
damit ich den Cursor an die Methode insertTextContent übergeben kann?

Wenn ich das richtig verstehe wird com.sun.star.text.TextRange nicht von 
Tabellen unterstützt. .... Mmmh

Vielen Dank für jeden Tipp.

Beste Grüße
Jochen

Mein Code:
'Das Dokument hat 2 Seiten
'Auf jeder Seite ist eine Tabelle
'Diese soll jeweils von einer Linie durchgestrichen werden

Sub zeichneLinie
        Dim Doc As Object
        Dim viewCursor As Object
        Dim Size As New com.sun.star.awt.Size
        Dim Point As New com.sun.star.awt.Point
        Doc = StarDesktop.CurrentComponent
        viewCursor = Doc.getCurrentController().getViewCursor()

        'erste Linie------------------------------------
        viewCursor.JumpToFirstPage()
        Size.Width = 17000
        Size.Height = 1350
        Point.x = 0
        Point.y = 5150
        ersteLinie = Doc.createInstance("com.sun.star.drawing.LineShape")
        ersteLinie.Position = Point 'vom Cursor aus gesehen
        ersteLinie.Size = Size
        'ersteLinie darf auf keinen Fall den Anker AS_CHARACTER haben,
        'dann funktioniert WrapTextMode = THROUGHT nicht
        ersteLinie.AnchorType = + _ 
com.sun.star.text.TextContentAnchorType.AT_CHARACTER
        'WrapTextMode = THROUGHT : Textfluss ignoriert das Objekt
        ersteLinie.TextWrap = com.sun.star.text.WrapTextMode.THROUGHT
        Doc.Text.insertTextContent(viewCursor, ersteLinie, False)

        'zweite Linie-------------------------------------
        viewCursor.JumpToPage(2)
        Size.Width = 17000
        Size.Height = 1350
        Point.x = 0
        Point.y = 520
        zweiteLinie = Doc.createInstance("com.sun.star.drawing.LineShape")
        zweiteLinie.Position = Point 'vom Cursor aus gesehen
        zweiteLinie.Size = Size
        zweiteLinie.AnchorType = + _ 
com.sun.star.text.TextContentAnchorType.AT_CHARACTER
        zweiteLinie.TextWrap = com.sun.star.text.WrapTextMode.THROUGHT
        Doc.Text.insertTextContent(viewCursor, zweiteLinie, False)
End Sub






___________________________________________________________
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Antwort per Email an