OpenOffice.orgの各アプリケーションには、マクロと呼ばれるプログラミング機能が実装されています。マクロを使うと、OpenOffice.orgで行う各種操作を自動化したり、独自の関数や機能を追加してOpenOffice.orgを強化(拡張)することも可能です。

マクロをうまく使いこなせば、OpenOffice.orgをベースに様々な処理を効率化するシステムを構築し、ユーザー自身で育てていくことができるでしょう。各種のライブラリやマクロもフリーソフトとして公開されているので、これらも活用したいところです。

では、さっそくOpenOffice.orgのマクロがどんなものか試してみましょう。

OpenOffice.orgのアプリケーションでは、「ツール」メニューの「マクロ」内にある「マクロの管理」からマクロの管理画面を呼び出すことができます。今回は、BASICのマクロを試してみることにしましょう。

Calcなど適当なOpenOffice.orgアプリケーションを起動し、「マクロ」メニュー内「マクロの管理」から「OpenOffice.org BASIC」を選択してください。すると、「OpenOffice.org BASICマクロ」の管理画面に移ります。

ここでマクロの記録先に現在の文書(無題1などとなっているはずです)を選択したら、「新規作成」。「新しいモジュール」でモジュール名を指定して(そのままでもかまいません)BASICモジュールを作成します。

モジュールが作成されると、マクロの編集を行うIDE(統合開発環境)の画面が出てきます。そこには、すでにMainというサブルーチンが用意されているので、その中に適当な処理を書いて遊んでみましょう。

まずは、マクロの実行確認のためSub Mainを以下のように書き換えてください。

Sub Main
MsgBox("test")
End Sub

MsgBox()は、指定の文字列をダイアログでメッセージ表示するOpenOffice.orgの組み込み関数です。

記述したマクロは、編集領域の上にある「BASICプログラムの実行」(→)ボタンで実行できます。実行すると「一番上にあるサブルーチン/関数」が実行されるようです。

実行ボタンでマクロが実行され、testという文字列が表示されたら、次に文字列を入力してみましょう。文字列の入力には、InputBox()という組み込み関数を使います。この関数は、入力ダイアログに表示するラベルを指定し実行すると、入力を受け付けて入力された文字列を返します。その返された文字列をMsgBox()で表示して、確認してみることにします。

Mainを以下のように書き換えて実行してみてください。実行すると、最初に入力ダイアログが出てくるので、適当な文字列を入力し、OKボタンをクリックします。すると、入力した文字列がMsgBox()で表示されるはずです。

Sub Main
MsgBox(InputBox("文字列を入力"))
End Sub

なお、こうして作成したマクロのサブルーチンや関数は、OpenOffice.orgアプリケーションの「ツール」メニュー「マクロ」から「マクロを実行」で実行することも可能です。この際は、マクロの作成時に指定した保存先からモジュールを選択し、サブルーチンや関数の名前を指定して実行してください。

以上で、OpenOffice.orgの各アプリケーションでBASICマクロを作成し、実行する一連の流れを掴めたと思います。


創作プログラミングの街 > OpenOffice.orgマクロ開発メモ