CSVの列を毎回並べ替えていませんか?面倒なCSV加工を効率化する方法
業務でCSVファイルを扱っていると、 「毎回同じように列を並べ替えている」 ということはないでしょうか。
販売管理システムや給与計算ソフト、勤怠管理システムなどからCSVを出力したものの、 そのまま別のシステムに取り込むことができず、Excelで開いて加工してから利用するケースがあります。
例えば、
- 不要な列を削除する
- 列の順番を入れ替える
- 必要な項目だけを残す
- 日付の形式を変更する
- 全角・半角を統一する
- 特定の文字を削除・置換する
といった作業です。
一度だけなら、それほど大変ではありません。 しかし、毎月、毎週、場合によっては毎日のように同じ作業をしているのであれば、 その作業方法を見直してみてもよいかもしれません。
なぜCSVの列を並べ替える必要があるのか?
CSVは多くのシステムで利用されていますが、 CSVの項目や並び順には、すべてのシステムに共通する決まりがあるわけではありません。
例えば、あるシステムから次のような順番でCSVが出力されたとします。
- 伝票番号
- 取引日
- 取引先
- 商品名
- 金額
ところが、取り込みたいシステムでは、
- 取引日
- 金額
- 取引先
- 摘要
- 伝票番号
という順番が指定されているかもしれません。
データの内容はほとんど同じなのに、 項目の順番が違うため、そのままでは利用できないわけです。
Excelで毎回並べ替える方法もありますが……
こうした場合、一般的にはCSVをExcelなどで開いて加工する方法が考えられます。
「この列を削除して、この列を左へ移動して、この列を右へ移動して……」 と作業すれば、取込先に合わせたCSVを作ることができます。
しかし問題になるのは、これが繰り返し発生する作業だった場合です。
毎月同じCSVが届くたびに、前回と同じ加工を行うことになります。
さらに手作業の場合、 「先月は正しく処理できたのに、今月は一列ずれてしまった」 といった操作ミスが発生する可能性もあります。
担当者が変われば、CSVの加工方法そのものを引き継ぐ必要もあります。
「列を動かす」のではなく「変換ルールを保存する」
そこで考えたいのが、 毎回CSVの列を並べ替えるのではなく、並べ替え方そのものを設定として保存する という方法です。
例えば、
- 元CSVの2列目 → 変換後CSVの1列目
- 元CSVの5列目 → 変換後CSVの2列目
- 元CSVの3列目 → 変換後CSVの3列目
- 元CSVの4列目 → 変換後CSVの4列目
- 元CSVの1列目 → 変換後CSVの5列目
という対応関係を一度設定しておきます。
次回同じ形式のCSVを受け取ったときには、その設定を読み込んで変換します。
こうすれば、毎回Excel上で列を移動する必要がなくなります。
CSVレイアウトコンバーターなら変換設定を保存できます
こうしたCSVの繰り返し作業を効率化するために開発したのが、 「CSVレイアウトコンバーター」です。
CSVレイアウトコンバーターでは、 元となるCSVの項目と変換後の項目を対応させ、 必要なCSVレイアウトを設定することができます。
さらに、作成したレイアウトは保存して、次回以降に読み込んで利用できます。
そのため、
CSVを読み込む
↓
保存してあるレイアウトを選択
↓
変換
↓
必要な形式のCSVを作成
という流れで、繰り返し行うCSV加工を簡単にすることができます。
列の並べ替え以外の変換にも
実際のCSV加工では、列の並べ替えだけで終わらないこともあります。
CSVレイアウトコンバーターでは、 レイアウト変更だけでなく、データに応じたさまざまな変換設定を組み合わせて利用できます。
例えば、日付形式の調整、不要文字の削除、文字の置換、 全角・半角の変換など、 取込先の仕様に合わせたCSVを作成するための処理を設定できます。
これまで、 「列を並べ替える → 文字を直す → 日付を直す → CSVとして保存する」 と複数の手順で行っていた作業を、 一つの変換処理としてまとめることができます。
毎回行っているCSV加工こそ見直してみませんか?
CSVの列を並べ替える作業は、一回あたり数分程度かもしれません。
しかし、それを毎月、複数の会社や複数のシステムについて行えば、 年間では相応の作業時間になります。
また、単純な作業ほど慣れによる操作ミスが起こる可能性もあります。
毎回同じCSVを開き、毎回同じ列を移動している。
もしそのような作業があるのであれば、 「CSVを加工する」のではなく、 「CSVの変換方法を保存して繰り返し利用する」 という方法を検討してみてはいかがでしょうか。
CSVレイアウトコンバーターは、 異なるシステム間にあるCSVレイアウトの違いを調整し、 日々のCSV加工を効率化するためのツールです。


