「製品カタログのWeb化」などの案件で必ず要望として上がるのが、CSVファイルでの製品情報のインポート/エクスポートです。
CSVファイルは単純なテキストファイルなのでシステムでも扱いやすく、phpMyAdminなどではデータベース情報のダンプなどに使えますね。また、システムの利用者としてもExcelで編集ができるので大量データの管理がしやすいと思います。
私も最近業務でCSVファイルの編集をすることが多いのですが、その中で以下のような不満が出てきました。
1. セルの幅が固定
ExcelでCSVファイルを開くと、どんなに長いデータが入っていてもセルが固定幅で開かれます。
ためしに気象庁のサイトからダウンロードできる気象データのCSVファイルをExcelで開いてみるとこんな感じになりました。
すべてのセルが固定で表示されて見づらいですね。
日付もセルに収まらない長さになるときちんと表示されなくなってしまいます。
データの長さに合わせて自動的にセル幅を調整してもらいたいところ。
2. 桁数の多い数値が指数表記になる
こちらがなかなか厳しいのですが、Excelで12桁以上の数値が含まれるCSVファイルを開くと自動的に指数表記になってしまいます。これは列幅を広げても直ってくれません。
製品管理のシステムだとJANコードとか入れると思うんですが、これが引っかかります。
このCSVファイルが…
こうなる
しかもこのまま保存すると指数表記のまま保存されてしまいます。
これはひどい(´・_・`)
直し方などは以下のページで詳しく記載されていますが、編集するたびにこれを忘れずにやるのは無理がある…
Excel:指数表示にされてしまった数値を一気に直す ( ソフトウェア ) – 513号室(保管庫) – Yahoo!ブログ
LibreOfficeでは大丈夫!
オープンソースのOfficeソフトに「LibreOffice」というソフトがあります。
ホーム | LibreOffice – オフィススイートのルネサンス
このソフトでもCSVファイルを編集できます。
しかもExcelで起きた問題は発生しません!
CSVファイルを開くとこのようなウインドウ出るので、文字エンコーディングを適切に設定して「OK」で開けます。
ちなみに文字エンコーディングを指定できるのでExcelでは文字化けしてしまうUTF-8で作成されたCSVファイルも開けます。
セル幅は自動的に調整されて見やすい。
また、JANコードなどの大きい数値もちゃんと表示してくれます。
そんなわけで、CSVファイルを編集する時はExcelよりもLibreOfficeのほうが便利だなあと思いましたので紹介させていただきました。
それでは、また11営業日後(予定)に!