0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LibreOffice の情報がなぜ少ない!

0
Posted at

LibreOfficeの情報が少ない理由と、Pythonでの付き合い方

LibreOfficeについて調べていると、Microsoft Officeと比べて、日本語の資料がかなり少ないと感じることがあります。

特にCalcのマクロや自動化について調べようとすると、Excel VBAの情報量との差に驚かされます。

今回は、LibreOfficeの資料が少ない理由と、Pythonを使う場合の考え方について整理してみます。

LibreOfficeの日本語資料が少ない理由

LibreOfficeは無料で使える高機能なオフィスソフトですが、日本ではMicrosoft Officeほど利用者が多くありません。

企業や学校ではExcelやWordが標準として使われることが多いため、書籍や講座を作っても、大きな需要を見込みにくいのだと思います。

その結果、LibreOfficeについて詳しく説明した日本語の本やWebサイトが少なくなります。

Writer、Calc、Impressの基本操作については情報が見つかりますが、少し高度な内容になると、急に資料が減ってしまいます。

LibreOffice Basicが難しく感じられる理由

Calcの自動化には、LibreOffice Basicというマクロ言語があります。

見た目はExcel VBAに少し似ていますが、実際にCalcを操作するには、UNO APIというLibreOffice独自の仕組みを理解する必要があります。

セルを取得するだけでも、Excel VBAとは書き方や考え方が異なります。

さらに、次のような処理を行うには、LibreOffice独自の知識が必要です。

  • ファイルを開いたときにマクロを実行する
  • ボタンから処理を呼び出す
  • セルやシートを操作する
  • ファイルを保存する
  • PDFとして出力する

単純な文法だけではなく、LibreOfficeの内部構造まで理解する必要があるため、初心者には少し取っつきにくい分野です。

Pythonで処理するという選択肢

普段からPythonを使っている場合は、無理にLibreOffice Basicを覚えなくてもよいかもしれません。

目的がCSVやExcelファイルの読み書き、データ加工、集計であれば、Pythonだけで処理を完結できます。

例えば、次のようなライブラリがあります。

  • csv
  • pandas
  • openpyxl
  • odfpy

Excel形式のファイルであればopenpyxl、CSVであれば標準のcsvモジュールやpandasが使えます。

ODF形式のファイルも、odfpyなどを利用すれば、Pythonから直接読み書きできます。

LibreOfficeを使う必要がある処理

ただし、Pythonだけでは扱いにくい処理もあります。

例えば、次のような場合です。

  • Calcの数式を再計算したい
  • 表示結果を確認したい
  • レイアウトを維持してPDFに変換したい
  • LibreOfficeの印刷機能を使いたい
  • マクロやグラフを含む文書を操作したい

このような場合は、PythonからUNO APIを使ってLibreOffice本体を操作する方法があります。

つまり、すべてをLibreOfficeで行う必要はありません。

普段のデータ処理はPythonで行い、LibreOfficeの機能が必要な部分だけLibreOfficeを呼び出す、という分け方が現実的です。

CSV中心ならPythonだけでも十分

日頃の仕事でCSVファイルしか使わないのであれば、Pythonを中心に考える方がシンプルです。

CSVは表計算ソフトの専用形式ではなく、単純なテキストデータです。

そのため、LibreOfficeを起動しなくてもPythonで自由に処理できます。

必要な処理をPythonで行い、結果を確認するときだけCalcでファイルを開く、という使い方でも問題ありません。

むしろ、処理と閲覧を分けることで、プログラムが分かりやすくなります。

英語の資料には詳しい情報が多い

日本語の情報は少ないですが、英語ではLibreOfficeに関する資料がかなり増えます。

特に次のような分野は、英語の情報が中心です。

  • UNO API
  • LibreOffice Basic
  • PythonからのLibreOffice操作
  • 拡張機能の開発
  • マクロの実例
  • ODFファイルの構造

英語が苦手でも、現在はChatGPTなどを使って、日本語で説明してもらいながら読み進めることができます。

英語の公式資料やサンプルコードを探し、必要な部分だけ日本語で理解するという方法なら、かなり学びやすくなります。

LibreOfficeに詳しい人は貴重かもしれない

LibreOfficeはExcelほど利用者が多くないため、詳しくなったとしても、すぐに大勢から注目される分野ではないかもしれません。

しかし、情報を必要としている人にとっては、詳しい人の存在は非常に貴重です。

特に次のようなテーマは、実務的な需要がありそうです。

  • ExcelからLibreOfficeへの移行
  • CalcとPythonを使った業務自動化
  • Linux環境での表計算処理
  • CSV処理とCalcの連携
  • LibreOfficeを使ったPDFの一括作成
  • UNO APIの日本語解説

派手に有名になるというよりも、特定の分野で頼られる人になれる可能性があります。

まとめ

LibreOfficeの日本語資料が少ないのは、利用者の規模や市場の小ささ、UNO APIの難しさなどが原因だと考えられます。

ただし、すべてをLibreOffice Basicで処理する必要はありません。

CSVやExcelファイルのデータ加工が中心なら、Pythonだけで処理し、確認するときだけLibreOfficeを使う方法が分かりやすいでしょう。

そして、数式の再計算やPDF出力など、LibreOffice本体の機能が必要になったときだけ、PythonからUNO APIを利用する形が現実的です。

LibreOfficeそのものを無理に使いこなそうとするのではなく、自分の作業に必要な部分だけを取り入れる。

そのくらいの付き合い方が、ちょうどよいのかもしれません。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?