Raspberry Pi で Office

Officeとは、表の計算、文章の作成、プレゼン資料の作成など、業務に使うアプリケーション一式のことで、マイクロソフト社の独占製品です。それゆえオープンソースでこれに対抗する製品として長年開発されてきたLibreOffice(元OpenOffice.org)というものがあります。Raspberry Piにはこれがインストールされており、マイクロソフト社のOfficeとかなり互換性があることから、代替え用として(ラズパイ的には入門用として)手軽に利用できるのが嬉しいところです。プログラミング学習という観点からは、マイクロソフトのExcelに相当するCalcがとても利用価値が高いアプリケーションだと思います。
ExcelにはVBAというBasic言語がありますが、Calcでも使えます。(互換性があるというと誤解がありますが、同じ要領で使えます) かなりレガシーの言語ですが、多用されているためずっと残っている機能です。それだけ利便性が高いといえます。私がこれに注目するのは、プログラム言語が何かとは関係なく、表(セル)というデータ格納エリアとプログラム言語の組み合わせの環境はデータ処理をはじめ幅広い用途にかなり有用だからです。
前置きがながくなりましたが、日頃Excelでやっている基本的なことをCalcではどのようなやるのか、という観点で使ってみました。

まず”ABC” という文字列と、”123″という数値をプログラムから設定してみました。
プログラムの実行は、「ツール」-> 「マクロの実行」または「マクロの管理」からサブルーチンを呼び出します。この場合は”Main”。

次にループと、表から数値を読み出し計算します。

A列に手動で入力した数値の総和を計算した結果をセルに書き込みます。マクロで計算したケースも併記しました。

また次のようなグラフも描画できることを確認しました。

セルに直に数式を書き込むマクロを使う場合、セルの状態(数値)が変わるとすぐに結果が反映されることから、リアクティブプログラミングと呼ばれる手法で処理ができ、BASICと組み合わせて、高度な処理が可能となります。

Raspberry Pi、これだけでかなり学べますね。