タダより高いモノは無い!? 一期1回 OpenOfficeの可能性を探れ!
2011.11.16
技術の小林です。
業務で使う仕事のいくつかを、タダで便利な何かに置き換えられないか?
このコラムではそんなタダのツールを触った悪戦苦闘を書いていこうかと。
「――何かマクロが動かないんだけど?」
ウチの業務ではExcelのマクロをよく使う為、
オペレータの方からこういった報告がちょくちょく来る。
けれどExcelのバージョンもOSの種類もマチマチな為、原因を辿るのは大変。
「社長、ここはひとつExcelの最新版とOSを一気に揃えてくださいよ!」
などと言えるわけもなく…。
そんな時に思い出したのがOpenOffice.org。
少し前にVBAの互換機能を実装したとかでちょっと触ってみたけれど、
導入、即マクロ実行とはいかなかったので忙しさにかまけてほったらかしになっていた。
まあいい機会だから、もう少し突っ込んで触ってみるとしよう。
早速OpenOfficeの最新版をインストール。
でもちょっと待って、なんかもう一つあるんだが!?
調べてみると、どうやらOpenOfficeにもLinuxのように分家があるようだ。
LibreOffice(分家)。
本家に比べて、意欲的なアップデートや新機能が追加されているみたい。
どちらにもVBAのサポートはあるみたいだから、この際両方落とすことにした。
本家も分家も見た目は同じ。
中身もそっくり。
インストールも問題なく終わったので(LibreOfficeはヘルプファイルも合わせてDL&インストール)
とりあえずLibreOfficeで、業務で使用しているマクロを流してみることにする。
こっちの方が動作が軽いらしいしね^^
まずはVBA属性の設定。
チェックされていることを確認。
これでExcelのVBAマクロを読めるようになる。
次に最近のMicrosoftOfficeでもお馴染みのマクロセキュリティ設定。
デフォルト設定ではマクロは無効になっているので変更の必要がある。
悪意あるマクロからの防御手段とはいえ、面倒な世の中になったものだ。
さて、これでマクロは動くはずなのでVBAマクロを含むExcelデータを開いて、
ツール→マクロからVBAProjectとし、任意のモジュールを選択する。
これでようやっとマクロ名称が出てくるんだが、
OpenOfficeではマクロ選択ウィンドウにプロシージャ(Sub)と関数(Function)の視覚的な差が無いようだ。
これはキツい…orz
ちなみにExcelではこんな感じ。
すっきり。
オペレータさん向けにわざわざ2バイト文字の名称を設定して、間接的に関数をコールしているのだw
兎も角、適当なマクロを実行して最初に出たエラー。
成程、名称に「●」だの「→」だの特別な文字列はイカンわなw
これは移行以前の問題かも…。
今日はここまでかな…。
次はもっと先のトラブルを報告したい(続く)