Zum Inhalt springen

StarOffice Basic

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 9. Januar 2026 um 07:16 Uhr durch imported>Siegbert v2 (+ GND).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

StarOffice Basic (auch bekannt unter der Bezeichnung StarBasic und OOoBasic) ist ein BASIC-Dialekt, der in die Office-Pakete LibreOffice, OpenOffice.org und StarOffice und dem darauf basierenden IBM Lotus Symphony integriert ist.

Vergleich mit anderen BASIC-Dialekten

StarBasic hat eine Ähnlichkeit zu anderen BASIC-Dialekten wie zum Beispiel Microsofts VBA.<ref>Thomas Hümmler: StarBasic. In: LinuxUser 05/2003. Abgerufen am 23. Januar 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> In der Praxis erfordert ein Makro in StarBasic meist einen größeren Overhead als ein Makro in der entsprechenden Applikation von Microsoft mit gleicher Funktionalität. Im Folgenden ist oben ein Makro für den Writer (Textverarbeitungsprogramm) von OpenOffice dargestellt, unten das Makro mit gleicher Funktion – nämlich dem Zählen der Abschnitte eines Textdokuments – in VBA von Microsoft Word:

<syntaxhighlight lang="oobas">

Sub ParaCount
'
' Absätze in einem Textdokument zählen in OpenOffice Basic
'
  Dim Doc As Object, Enum As Object, Count As Long
  Doc = ThisComponent
' Ist dies ein Textdokument?
  If Not Doc.SupportsService("com.sun.star.text.TextDocument") Then
    MsgBox "Dieses Makro muss aus einem Textdokument ausgeführt werden", 64, "Error"
    Exit Sub
  End If
  Count = 0
' Jeden Teil des Dokuments überprüfen - Absatz oder Tabelle?
  Enum = Doc.Text.CreateEnumeration
  While Enum.HasMoreElements
    TextEl = Enum.NextElement
' Ist dieser Teil des Dokuments ein Absatz?
    If TextEl.SupportsService("com.sun.star.text.Paragraph") Then
    Count = Count + 1
    End If
  Wend
'Ergebnis anzeigen:
  MsgBox Count, 0, "Anzahl der Absätze"
End Sub

</syntaxhighlight>

<syntaxhighlight lang="vbscript"> Sub ParaCount()

'
' Absätze in einem Textdokument zählen in MS Word Visual Basic
'
 MsgBox ActiveDocument.Paragraphs.Count

End Sub </syntaxhighlight>

Literatur

  • Thomas Krumbein: Makro Kochbuch. LibreOffice/OpenOffice Basic. Tintal Verlag, Wiesbaden 2013, ISBN 978-3-943771-02-2.

Weblinks

BASIC-Macros

StarOffice/OpenOffice.org API

Einzelnachweise

<references />

Vorlage:Hinweisbaustein