マクロを含んだEXCELファイル(拡張子xlsm)をLibreOffice Calcで開き、
動作させようとしても駄目な事例がある。後のために、以下にメモしておく。
1.事例その1
シートを保護して、マクロだけは書き換え可能にできない。
下図下線部のように、EXCELではマクロだけは書き換え可能にできる。
しかし、LibreOffice Calcでは、無視されてシート保護と同じになる。
→その為、マクロによる書き換えはエラーなしに拒否される。
2.事例その2
選択した画像をコピーできない。
下図青色部分は、EXCELでは動作してコピーが出来る。
しかし、LibreOffice Calcでは、BASICランタイムエラー423が出る(該当するメソッドがない)。
<個人的な感想>
事例その1は、バタイユゲーム支援ツールで起こったものである。
LibreOffice Calcで対策するには、全てのボタンのマクロに対して、
当該シートの保護解除/マクロ処理実行/当該シートの保護設定を
行う必要があり、不可能ではないが、現実的ではない。その為、諦めた。
上記事例以外にも、EXCEL VBAと互換性のないものがある筈だが、
その一覧がWEBで探しても見当たらない。
EXCEL VBAのLibreOffice Calcへの移行は、暗い闇の中を手探りで進むようなものである。