LibreOffice Calcは、Microsoft Excelと同じ表計算ソフトです。
Officeアプリケーションのマクロの情報は、表計算ソフトについての情報が最も多いです。LibreOffice Calcも同様に、インターネット上のマクロに関する情報は、Calcのものが多く紹介されています。
そのため、LibreOfficeマクロの使い方の情報を調べるには、Calcのマクロの情報から集めたほうが、集めやすいです。
経理計算や帳票印刷など、ほぼ、ほぼ同じ作業を大量に処理する用途が存在することや表計算ソフト上で、データを管理できることから、変数を使う代わりに、表計算ソフトのセル上にデータを格納することで、変数とは異なり、中身を確認しながら動作させることができるメリットがあります。
StarBasicとVBA
LibreOfficeとApache OpenOfficeのマクロは、StarBasicから進化しています。Microsoftが、提供するVBAとは、異なるものであることに注意してください。
LibreOfficeとApache OpenOfficeでは、Microsoft Officeから移行するユーザーの利便性を考え、互換性に対する配慮がされています。しかし、基本的には、LibreOfficeとApache OpenOfficeのマクロは、Microsoft OfficeのVBAとは、異なるものであること考える必要があります。
このため、StarBasicとVBAは、個別に理解する必要があります。
VBA互換モード
初期設定の状態では、Microsoft Officeで作成したVBAマクロは動作しない場合があります。
LibreOfficeでVBAマクロを実行する状況には、大きくは、次の2つの場合が考えられます。Microsoft Officeで作成したドキュメントにマクロが含まれている場合、LibreOfficeで作成した文書に、VBAスタイルでマクロを記述しようとする場合です。
LibreOfficeで作成した文書に、VBAスタイルでマクロを記述しようとする場合には、コンパイラオプションを指定しないと実行することができません。
マクロを作成する
LibreOffceのマクロは、文書ファイルの中に格納します。新しくマクロを作成するために、マクロ・エディタを使用します。
Calcマクロ
基本的な、LibreOffice Calcのマクロについて確認していきます。
コードの表記が、Star Basicスタイルなのか、VBAスタイルなのか、確認し、混乱しないように覚えていきましょう。
Libreoffice Basic言語部分の知識
プログラムの制御構文、変数や演算子など、Basicマクロ言語として、共通に利用されてる知識やルールがあります。一般のプログラミング言語では、これらの知識を把握するところから始める必要があります。
Basicマクロで、Witer文書を操作する
Writerで使用するマクロは、主に文書の入力作業の軽減と推敲の支援、レイアウトの統一することを目的に作成します。
LibreOfficeのマクロのドキュメントとインターネット上の情報
マクロに関する情報は、インナーネット上のドキュメントを探す必要があります。