開発部だより 第187回
OLIONです。
開発事業部の中でも、私は運用業務を主に担当しているのですが、その中でデータ加工の際、EXCELを使用して経験したことを紹介します。
運用の中で、顧客から提供された紙の原票をCSVファイル形式でデジタルデータにし、それをプログラムで入力します。そしてエラーリストが出力されます。よくあるパターンです。それを、顧客に渡して修正されてきたものについて、CSVファイルをEXCEL
で開いて、データ修正を行います。
修正後、CSV形式で出力し、再びプログラムで入力したところ、入力ファイルのフォーマットエラーが発生しました。
EXCELで出力したCSV形式ファイルの中味を確認すると、カンマの数が、途中から少なくなっていました。そのためエラーとなってしまったわけです。
EXCELでは、例えば最終列に16行以上連続してデータが無いと、CSV形式出力でカンマを付加してくれないとのことでした。(知らなかった!)
回避策としては、EXCELで、最終列について、データのある行までセルに色付けします。そのことで、CSV出力の際、最終列の属性が違うため、全ての行に同じ数のカンマを付加してくれます。
横着して、最終列全部を色づけしたところ、最終行以下のデータのないところもデータとみなされてCSV形式で出力されてしまい、データ件数が異なり、当然エラーリストにも出力されてしまいました。(結局遠回りです。)
知っていれば、遠回りしないで、運用工数も増えずに済みますので紹介しました。
また、入力データの設計の際、最終列に常にデータを入れる形にすれば、回避策も必要なくなります。検討項目にいれておけばよいと思います。
以上