LibreOffice5にアップグレード後、マクロを実行する(問題作成ボタンをクリックする)と「BASICシンタックスエラー」(図1)が発生しました。今までは、何の問題もなく実行できていたマクロです。つまり、LibreOffice4.4まではエラーもなく普通に動作していたのです。

Screenshot from 2015-08-19 15:42:17

図1:LibreOffice5でBASICシンタックスエラー

シンタックスエラーなので、構文上のエラーだろうなぁ〜。よかった。授業後にアップグレードしたので今日の分は印刷が終わっていました。明日までにはなんとかなるでしょう。

さて、マクロの編集を開いて、コンパイルボタン(図2赤枠)をクリックするとエラーが発生しています。

Screenshot from 2015-08-19 15:33:40

図2:赤枠のコンパイルボタンをクリック

初めは、LibreOffice5で大幅に、postgresqlデータベース接続構文が変更されたのかと思いpostgresqlのドキュメントをザーッと眺めてみました。が、とくに構文が違っているわけでもないです。

さらに、よく眺めてみると、図3のように全角の空白が挿入されていました。この全角の空白を半角の空白に変更すると、エラーが消えました。

Screenshot from 2015-08-19 15:44:39

図3:「全角の空白」が原因だった!

しかし、マクロを実行するとまた同じエラーが発生しました。さらに、調べると「全角の空白」が結構見つかりました。それらすべてを「半角の空白」に変更して、無事マクロは正常に動作してくれました。

Screenshot from 2015-08-19 15:46:40

図4:すべての「全角の空白」を「半角の空白」に変更

つまり、LibreOffice4までは「全角の空白」でも「半角の空白」でもOKだったが、LibreOffice5ではダメ!ということです。まぁ、普通に考えると「全角の空白」はダメでしょうね。