シリアル番号でウィジェットの販売を追跡するデータベースがあります。ユーザーは購入者のデータと数量を入力し、各ウィジェットをカスタムクライアントプログラムにスキャンします。その後、注文を確定します。これはすべて完璧に機能します。
一部の顧客は、購入したウィジェットのExcel互換のスプレッドシートを求めています。データベースをクエリし、ストア名と関連データを含むCSVとして結果を出力するPHPスクリプトでこれを生成します。これも完璧に機能します。
メモ帳やviなどのテキストエディターで開くと、ファイルは次のようになります。
"Account Number","Store Name","S1","S2","S3","Widget Type","Date"
"4173","SpeedyCorp","268435459705526269","","268435459705526269","848 Model Widget","2011-01-17"
ご覧のとおり、シリアル番号が存在し(この場合は2回あり、すべてのセカンダリシリアルが同じではありません)、番号の長い文字列です。このファイルをExcelで開くと、結果は次のようになります。
Account Number Store Name S1 S2 S3 Widget Type Date
4173 SpeedyCorp 2.68435E+17 2.68435E+17 848 Model Widget 2011-01-17
お気付きかもしれませんが、シリアル番号は二重引用符で囲まれています。Excelは.csvファイルのテキスト修飾子を尊重しないようです。これらのファイルをAccessにインポートするとき、難易度はゼロです。それらをテキストとして開くとき、まったく問題ありません。しかし、Excelは必ずこれらのファイルを無駄なゴミに変換します。既定ではないアプリケーションでCSVファイルを開くという方法でエンドユーザーに指示しようとするのは、面倒なことです。希望はありますか?見つけられなかった設定はありますか?これは、Excel 2003、2007、および2010の場合のようです。