Umsteigen auf OpenOffice: Von VBA zu OpenOffice-Basic
VBA versus OOo-Basic
In diesem Artikel zeigen wir am Beispiel eines Reporting-Tools für StarCalc in OpenOffice.org, welche Ähnlichkeiten, Vorteile und Nachteile OOo-Basic gegenüber VBA bietet. Dabei stehen als zentrale Elemente der Sprachkern, Dialoge und der Zugriff auf OOo-Calc im Vordergrund.
Das fertige Reporting-Tool finden Sie auf der CD herunterladen. Es ist sehr einfach aufgebaut:
Dialoge
An ein Calc-Dokument soll ein Dialog gebunden werden. Über Extras / Makros / Makro gelangen Sie in den Basic-Editor, wo Sie einen neuen Dialog erstellen. Im Gegensatz zu VBA finden sich dort mehr Steuerelemente: Datumsfelder, nummerische Felder, Fortschrittsbalken oder Dateiauswahlfelder, um nur einige zu nennen. Die Eigenschaften werden – ähnlich wie in VBA – über ein Feld festgelegt.
Um nun den Dialog zu starten, erstellen Sie in einem Modul ein Makro mit folgenden Befehlen:
Public Dlg As Object
Sub Start
DialogLibraries.LoadLibrary("Standard")
Dlg = CreateUnoDialog(DialogLibraries.Standard.dlgVerkaeufer)
Dlg.Execute()
Dabei ist „Standard“ die Bibliothek, in der sich der Dialog befindet (es kann selbstredend auch eine andere Bibliothek sein), und dlgVerkaeufer, der Name des Dialogs.