Boris Ratak wrote:
Hi,

I'm using OOBasic to access bookmarks in Writer and Word documents. It's pretty easy to write down some text in them, but is it possible to access a table located in a bookmark? I know this is possible in VBA, but I've tried to do it in OOBasic, without success. Here's what I try : myBk = oDoc.Bookmarks.getByName("someBookmark")
myTable = myBk.Anchor.TextTables(1)
OR myTable = myBk.TextTables(1)


I know I could access the Table directly by giving it a name, but as I handle 
Word documents, the name of the table is lost.

Any idea someone?

Thx

B.
No, you can not directly access the text table inside of a bookmark.
Unfortunately, you must enumerate the contained text and look for the contained text tables. I do not have time to demonstrate a clean solution, but:

Sub FindFirstTableInBookmark
 Dim oMark
 Dim oEnum     'Enumeration of text sections.
 Dim oSect
 Dim oParEnum
 Dim oPar
 Dim oField    'Enumerated text field.
 Dim s$        'Generic string variable.
 Dim n%        'Count the number of text fields.
 Dim sPrompt$
 Dim i%
 Dim sRefName
 Dim oSel
 Dim oSels
 Dim oLastBookMarkName$
 Dim oCurs
 Dim oText

 oMark = ThisComponent.Bookmarks.getByName("First")
 oParEnum = oMark.getAnchor().createEnumeration()
 Do While oParEnum.hasMoreElements()
   oPar = oParEnum.nextElement()
   If oPar.supportsService("com.sun.star.text.Paragraph") Then
     'oEnum = oPar.createEnumeration()
     'Do While oEnum.hasMoreElements()
     '  oSect = oEnum.nextElement()
     '  If NOT IsNull(oSect.Bookmark) Then
     '    REM Bookmark
     '    If oLastBookMarkName <> oSect.Bookmark.getName() Then
     '      oLastBookMarkName = oSect.Bookmark.getName()
' s = s & oSect.Bookmark.getName() & " : " & oSect.Bookmark.getAnchor().getString() & CHR$(10)
     '      n = n + 1
     '    End If
     '  End If
     'Loop
   ElseIf oPar.supportsService("com.sun.star.text.TextTable") Then
     n = n + 1
     s = s & "Table: " & oPar.getName()
   End If
 Loop
 If n > 0 Then
   MsgBox s
   s = "" : n = 0
 End If

End Sub


--
Andrew Pitonyak
My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
My Book: http://www.hentzenwerke.com/catalog/oome.htm
Info:  http://www.pitonyak.org/oo.php
See Also: http://documentation.openoffice.org/HOW_TO/index.html

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

Reply via email to