OpenOffice Basic

Материал из Википедии — свободной энциклопедии

OpenOffice Basic (ранее известный как StarOffice Basic или StarBasic или OOoBasic) — это диалект

BASIC, впервые появившийся в офисном пакете StarOffice и получивший распространение с пакетом OpenOffice.org, а также с производными от него, такими как LibreOffice
(в котором он известен как LibreOffice Basic).

Пример

Хотя OpenOffice Basic сам по себе похож на другие диалекты BASIC, такие как

макроса
ниже. В то время как есть гораздо более простой способ получить свойство документа «счётчик абзацев», в примере показан основные последовательный метод доступа к каждому абзацу текстового документа.

Sub ParaCount
'
' Подсчитать количество абзацев в текстовом документе
'
    Dim Doc As Object, Enum As Object, TextEl As Object, Count As Long
    Doc = ThisComponent
' Это текстовый документ?
    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
' Проверить каждый компонент: абзац или таблица?
    Enum = Doc.Text.CreateEnumeration
    While Enum.HasMoreElements
        TextEl = Enum.NextElement
' Является ли компонент абзацем?
        If TextEl.SupportsService("com.sun.star.text.Paragraph") Then
            Count = Count + 1
        End If
    Wend
'Display result
    MsgBox Count, 0, "Paragraph Count"
End Sub

Ссылки

BASIC Macros
OpenOffice.org API