Jump to content

OpenOffice Basic

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 79.224.225.4 (talk) at 16:14, 12 January 2013 (See also). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Three modern Basic variants: Mono Basic, OpenOffice Basic and Gambas.

OpenOffice Basic (formerly known as StarOffice Basic or StarBasic or OOoBasic) is a dialect of the programming language BASIC that is included with the OpenOffice, StarOffice and LibreOffice office suites.

Example

Although Openoffice Basic itself is similar to other dialects of Basic, such as Microsoft's VBA, the application programming interface (API) is very different, as the example below of a macro illustrates. While there is a much easier way to obtain the "paragraph count" document property, the example shows the fundamental methods for accessing each paragraph in a text document, sequentially.

Sub ParaCount
'
' Count number of paragraphs in a text document
'
  Dim Doc As Object, Enum As Object, TextEl As Object, Count As Long
  Doc = ThisComponent
' Is this a text document?
  If Not Doc.SupportsService("com.sun.star.text.TextDocument") Then
    MsgBox "This macro must be run from a text document", 64, "Error"
    Exit Sub
  End If
  Count = 0
' Examine each component - paragraph or table?
  Enum = Doc.Text.CreateEnumeration
  While Enum.HasMoreElements
    TextEl = Enum.NextElement
' Is the component a paragraph?
    If TextEl.SupportsService("com.sun.star.text.Paragraph") Then
      Count = Count + 1
     End If
  Wend
'Display result
  MsgBox Count, 0, "Paragraph Count"
End Sub

See also

Further reading

  • James Steinberg: Open Office Basic: An Introduction ISBN 978-1481270939

BASIC Macros

OpenOffice.org API