Go-OO -Officeソフト乗換えの壁-

MOONGIFT:OpenOfficeをさらにパワーアップ!「Go-OO」

Micorosoftが大きなシェアを誇るOffice用ソフトの代替として期待される「OpenOffice.org」で、新たにVBAに対応するバージョンが発表された模様。

早速試してみたました。

Microsoft Excelには、一部関数に絶妙なバグ?という名の仕様があります。
それは文字列関数の中の「asc関数」(文字列の半角化)「jis関数」(文字列の全角化)です。

特に、「ヴ」の変換が何故か出来ません。
Microsoftで調べてみると、こんな解答が返ってきます。

指定した文字に対する半角文字が存在しないもの (ヴ、ヰ、ヱ、ヵ、ヶ) は全角の
ままで値が返されます。

「Go-OO」でも同様の仕様のようです。
この問題を解決するには、個人的に最も早い処理は、VBAによるユーザー定義関数を使用することです。個人用マクロブックに記述します。

function hankaku(文字列 as string)as string
hankaku=strconv(文字列,vbNarrow)
end function

この「hankaku関数」を使用すると、全角に対応する半角文字がある場合には変換が可能です。
また、「JIS関数」(全角変換)でも同じ現象が起きます。「ヴ」→「ヴ」には変換できません。

そこで、またまたユーザー定義関数を定義して対応します。

function zenkaku(文字列 as string)as string
zenkaku=strconv(文字列,vbNarrow)
end function

これが「zenkaku関数」です。

…と、本題に戻りますと、OpenOfficeがこれに対応できているか検証してみましたが、
どうやらVBAによるユーザー定義関数には未対応のようです。

今日は、シンプルなVBAに関してはテストしていないので、日をあらためてチェックしてみようと思います。

これからのバグ・フィックスや新機能の搭載に期待したいと思います。

コメントを残す

メールアドレスが公開されることはありません。