LibreOfficeでPythonを使用する方法(Linux Mintの場合)

概要

Linux Mintには、デフォルトでLibreOfficeがインストールされています。

LibreOfficeでは、マクロとしてPythonを使用できますが、初期状態では使用できず、「APSO - Alternative Script Organizer for Python」のインストールが必要です。

extensions.libreoffice.org

但し、Linux MintのようなUbuntu系のディストリビューションの場合、通常のインストール方法とは異なります。 以下、Linux Mintの場合のインストール方法を解説します。

解説

インストール方法

下記コマンドを実行してください。

sudo apt install libreoffice-script-provider-python

wiki.documentfoundation.org

Pythonファイルを配置する準備

LibreOfficeの、どのアプリケーションでも良いので、起動し、すぐに閉じる。

これによって、「/home/user/.config/libreoffice/4/user」ディレクトリまでが作成される。

※userの部分は、ご自身のアカウント名です。

.configファイルは隠しディレクトリなので、ファイルマネージャーで「隠しファイルを表示」設定にすると、以降操作しやすいです。

/home/user/.config/libreoffice/4/user/Scripts/pythonディレクトリを作成する。

Pythonファイルを実行する準備

先程作成した pythonディレクトリ内にPythonファイル(*.py)を配置します。

これによりLibreOfficeに認識されるようになります。

LibreOfficeを起動し、ツール - オプション - LibreOffice - セキュリティ - マクロセキュリティ - セキュリティレベル「中」に設定します。

Pythonファイルの実行

ツール - マクロ - マクロを実行 - マイマクロの中に自作したPythonのマクロがありますので、選択したのち、実行します。

動作確認

動作確認をしたい方のために、サンプルのコードを下記に掲載しておきます。

greeting.pyと名前を付けた上で「/home/user/.config/libreoffice/4/user/Scripts/python」内に配置してください。

def greeting():
    doc = XSCRIPTCONTEXT.getDocument()
    doc.Sheets[0]['A1'].String = 'Hello World!'
    return

LibreOffice Calc(表計算ソフト)を起動し、マクロを実行してみてください。

A1セルに「Hello World!」と表示されればOKです。