LibreOffice: So erstellen Sie Ihre eigenen Makros
Mit Visual Basic for Applications (VBA) hat Microsoft eindrucksvoll demonstriert, wie flexibel und vielseitig eine eigene Skript-Sprache für Microsoft Office einsetzbar ist. Vor allem in Unternehmen sind VBA-Skripte beliebt: Sorgen sie doch dafür, dass viele unternehmensspezifische Arbeitsabläufe bei der Arbeit mit Office vollautomatisch ablaufen.
Aber auch die freie Office-Suite LibreOffice hat eine vergleichbar leistungsfähige Makro-Sprache in petto, die sich vor der kommerziellen Microsoft-Konkurrenz nicht zu verstecken braucht. Die Office-Suite LibreOffice ist fester Bestandteil von Ubuntu. Die einzelnen Komponenten von LibreOffice können Sie über die Starterleiste links im Fenster aktivieren.
Wie Sie bei LibreOffice "Makros" programmieren
Der Quellcode von LibreOffice ist unglaublich groß und kompliziert. Es ist daher sehr schwierig, hier neue Funktionen einzubauen. Müssen Sie aber auch gar nicht. Die Programmierer haben nämlich eine Schnittstelle geschaffen, mit der das sehr viel einfacher geht.
Sie können in LibreOffice eigene Erweiterungen, so genannte "Makros" programmieren. Dazu klicken Sie zunächst im Menü auf "Extras / Makros / Makros verwalten / LibreOffice Basic". Es erscheint ein Dialogfeld, in dem Sie als erstes Ihrem neuen Makro einen Namen geben. Für mein Beispiel gebe ich den Namen "Hallo_Welt" ein. Dann klicken Sie auf "Neu", um das Makro anzulegen.
Jetzt öffnet sich die Programmierumgebung für LibreOffice Basic. Hier können Sie Befehle eingeben, Ihren Code starten und testen. Ein paar Zeilen Quellcode sind schon vorgegeben:
REM ***** BASIC *****
Sub Main
End Sub
Sub Hallo_Welt
End Sub
Dabei markiert "Sub Hallo_Welt" den Beginn meines eigenen Codes und "End Sub" das Ende.
Links sehen Sie den so genannten "Objektkatalog". Er enthält eine baumförmige Übersicht über vorhandene Makros und Module. Wenn Ihr Makro zunächst nicht zu sehen ist, öffnen Sie in diesem Baum den Zweig "Meine Makros & Module / Standard / Module1". Hier taucht der Name Ihres Makros auf, also in meinem Beispiel "Hallo_Welt".
Die einfachste Progrogrammieraufgabe besteht traditionell darin, die Worte "Hallo Welt" ausgeben zu lassen. Das erledigen Sie, indem Sie folgenden Befehl zwischen "Sub Hallo_Welt" und "End Sub" schreiben:
msgbox "Hallo Welt"
Dann starten Sie Ihr Makro, indem Sie die Taste F5 drücken oder auf das entsprechende Symbol in der Menüleiste klicken.
Automatisieren Sie Standardvorgänge mit den eigenen Makros
Wenn Sie bestimmte Befehle in LibreOffice immer wieder ausführen, können Sie sich die Arbeit erleichtern, indem Sie sich ein so genanntes Makro aufzeichnen lassen. Ein Makro ist eine Sammlung von bestimmten Befehlen, die Sie immer wieder ausführen können, ohne die Befehle im Einzelnen manuell eingeben zu müssen.
Ein einfaches Beispiel: Sie legen Wert auf ein einheitliches Design in Ihrer Korrespondenz. Daher sollen alle in Dokumenten eingefügten Grafiken und Bilder ein einheitliches Design erhalten, etwa einen Rahmen in bestimmter Stärke. Um ein entsprechendes Makro mithilfe des Makro-Rekorders anzulegen, gehen Sie wie folgt vor:
- Legen Sie beispielsweise mit der Textverarbeitung LibreOffice Writer ein neues Dokument an und speichern Sie das Dokument über DATEI – SPEICHERN.
- Importieren Sie eine beliebige Grafik in das Dokument.
- Starten Sie den Makro-Rekorder durch einen Klick auf EXTRAS – MAKROS – MAKRO AUFZEICHNEN.
- Führen Sie nun die gewünschten Aktionen durch.
- Anschließend klicken Sie in der frei schwebenden Palette MAKRO AUFZEICHNEN auf AUFZEICHNUNG BEENDEN.
- Im angezeigten Dialogfenster können Sie nun noch einen Namen für Ihr erstelltes Makro eingeben.
- Um das Makro später auf andere Bilder anzuwenden, genügt es, das jeweilige Bild zu markieren und anschließend unter EXTRAS – MAKROS AUSFÜHREN – MEINE MAKROS auf das neu angelegte Makro zu klicken.
HINWEIS: Sollte der Menüpunkt MAKRO AUFZEICHNEN nicht auswählbar sein, müssen Sie vorab die Java-Laufzeitumgebung einrichten. Installieren Sie dazu das Paket LIBREOFFICE-JAVA-COMMON und aktivieren Sie die Textverarbeitung LibreOffice Writer erneut.