システムからCSVを出すたびに、不要列を削除し、列順を入れ替え、日付やコードの形式を直しているなら、その変換手順は自動化しやすい部類です。
大切なのは、完成後の見た目ではなく「どの列を、どの規則で変えるか」を一覧にすることです。
同じ変換を繰り返すならPower Queryが有力です。文字コード、区切り文字、先頭ゼロ、数値と文字列の違いまで指定する必要がある場合は、VBAやほかの処理を組み合わせます。
この作業は自動化候補です
次の項目が多いほど、手作業をそのまま続けるより、自動化の効果が出やすくなります。
- 毎回同じシステムからCSVを出力する
- 削除する列と残す列が決まっている
- コードの先頭ゼロが消えて困る
- 日付や金額の表示を毎回直している
- 別システムへ取り込むため列順を合わせている
作業を三つに分けて考える
- 1元CSVを読み込む
文字コード、区切り、見出し行を確認します。
- 2変換ルールを適用する
列選択、並べ替え、置換、分割、型変換を行います。
- 3取込用ファイルを出す
必要な列順と形式で保存し、件数を照合します。
向いている方法の考え方
Power Queryは、列の削除、名前変更、型変換、複数CSVの結合などを手順として保存できます。出力先システムへ渡すCSVを作る場合は、最後の保存形式まで含めて確認します。
CSVをExcelで直接開くと、商品コードや郵便番号の先頭ゼロ、長い番号、日付らしい文字列が自動変換されることがあります。読み込み方法と列の型を決めることが重要です。
| 候補 | 向いている場面 | 注意点 |
|---|---|---|
| Power Query | 列の選択・変換・結合を繰り返す | CSVとしての再出力方法を確認 |
| VBA | 読込から保存、ファイル移動まで行う | エラー時の再実行を設計 |
| 関数 | 少量データを既存表へ表示する | 大量行では重くなりやすい |
相談前にそろえるもの
完成形を細かく設計する必要はありません。今の作業が再現できる材料をそろえる方が重要です。
- 変換前CSVを2〜3種類
- 完成後の正しいCSV
- 列ごとの変換ルール
- 取込先で出るエラーの例
- 文字コードや区切り文字の指定
専門家へ頼んだ方がよい目安
- 数万行以上あり、Excel操作が重い
- 取込エラーの原因が分からず毎回修正している
- 複数システムのCSVを一つの形式へそろえる
- ファイル保存名やフォルダ移動まで自動化したい
よくある失敗
- CSVを一度Excel形式へ保存し、余計な書式を混ぜる
- 先頭ゼロを数値として読み込む
- 空欄とゼロを同じ扱いにする
- 変換後の行数と金額合計を照合しない
よくある疑問
CSVをダブルクリックせずに処理できますか?
できます。Power Queryなどでファイルとして読み込めば、Excelの自動変換を避けながら列の型を指定できます。
毎月ファイル名が変わっても大丈夫ですか?
フォルダ内の最新ファイルや、名前の規則に合うファイルを対象にできます。誤ったファイルを選ばない条件も必要です。
変換後のCSVを自動保存できますか?
方法によります。Power Queryだけでは出力方法に工夫が必要な場合があり、VBAなどを組み合わせることがあります。