ソフトウェアの入出力などの関係で、MS Excelで作成したワークシートをCSVファイルとして出力したい場合があるかと思います。その際に注意すべき点があります。
Excel上で、ある表をCSVファイルに変換したとします。ここでもし一番右側の列のセルに空欄があると、本当ならあってほしいコンマ「,」がその行だけ欠けてしまいます。例えば、次のような表があったとします。
名前 | ID | 給与 |
Aaa | 1001 | "300,000" |
Bbb | 1002 | "280,000" |
Ccc | 1003 |
すると、次のように出力されてしまいます。
Aaa,1001,"300,000"
Bbb,1002,"280,000"
Ccc,1003
これに対処するには2通りあります。1つ目は、CSVファイルとして出力する前に、データの書かれている列より右側にダミーの列を書き加えることです。ダミーなので、中身は特になんでもかまいません。そうすることで、データが書き込まれる場所にはコンマが正常に付加されます。ただし、大量にデータがある場合は、余計なデータを付加しているので、ファイルの大きさが以前よりも増加します。
2つ目は、CSVファイルを読み込ませるプログラムでそのような例外に対して対処することです。この方法なら、データを変更する必要はありませんが、プログラムを組む際に入力データについてしっかりと検討する必要があります。
コメントする