0 返信 最新の回答 日時: Aug 12, 2012 10:36 PM ユーザー:tyuasa

    Excelのファイル形式で出力内容が異なる問題

    tyuasa

      ◆問題

      ファイルから、レコードのエクスポートで、純粋に「XLS形式」と「XLSX形式」の指定の違いだけで、複数行のテキストを書出した内容が異なる問題があります。

       

      ◆環境

      バージョン:11、12で発生

      Windows確認済み、Mac未検証

      クラサバ、スタンドアローン、ランタイム環境ともに発生

       

      ◆詳細

      正常:「XLS」形式(=FM上で入力・確認できる状態)

      AAAAA AAAAA

      BBBB BBBB

      CCCCCC CCCCC

       

      異常:「XLSX」形式

      AAAAA AAAAA

       

      ◆再現性

      困ったことに、全ての入力データで発生するのではなく、入力データ内容で、問題が再現する、しないがあります。

       

      今確認されている、この現象が発生するのは、以下の2パターンです。

      1)計算式フィールドの書出しで、 式は、フィールドA & "¶" & フィールドB ...のように、単純にフィールドを連結しただけで、フィールドB以降の内容が出力されてこない

      2)テキストフィールドの書出しで、問題の発生する箇所に、ASCIIコード「0」(もしくは「20」)を確認(元の文字データは、他のアプリの文章からコピーペーストされたもよう)

      ※ASCIIコード「0」と特定したのは、FMから一度別アプリにコピペした上で、バイナリエディタへコピペした結果です。

      FMからバイナリエディタ(や、Windowsのメモ帳)にコピペすると、ASCIIコード以降がペーストされません。

       

      スクリプトでも、メニューからのエクスポートのどちらでも関係なく、「XLSX」形式だと問題が生じます。

       

      ◆追記

      上記2パターンそのものに関連性はないかもしれませんが、現象が似ているため、併せて報告させていただきます。

       

      Excel書出し機能は、FileMakerの標準機能のため、作り込み等による開発テクニックでは回避ができません。

      Substitute関数を使ったASCIIコード「0」「20」を除去は試しましたが、これは失敗します。

       

      FileMakerの文字処理の根本的な部分に原因があると思われるのですが、いかがでしょうか。