CSVがカンマで列ずれする原因とダブルクォートの正しい使い方
CSV内の住所や商品名に含まれるカンマで列がずれる原因と、ダブルクォートで囲む正しい書き方、確認手順を解説します。
公式情報と実際の操作手順を確認して内容を整理しています。
CSVではカンマが列の区切りです。「Tokyo, Japan」のような値をそのまま書くと、値の中のカンマまで区切りと判断されます。カンマを含む項目全体を半角ダブルクォートで囲むのが基本です。
先に確認
- 元ファイルは上書きせず、コピーで作業してください。
- 保存前に元CSVをメモ帳などでも確認してください。
- 画面名はExcelのバージョンで多少異なる場合があります。
正常例と壊れた例
壊れた例は 1,田中,Tokyo, Japan で、3列のつもりが4列になります。正しくは 1,田中,"Tokyo, Japan" です。引用符自体を含む値は、その引用符を二つ重ねます。
原因を特定する手順
- ヘッダーの列数を数えます。
- ずれた行をテキストエディターで確認します。
- 値の中のカンマ、改行、引用符を探します。
- 引用符が対になっているか確認します。
- インポート画面で区切り文字をカンマ、テキスト修飾子を引用符にします。
区切りがセミコロンの場合
地域設定や出力元によってはセミコロンが使われます。拡張子だけで決めず、各行で繰り返す区切り文字を確認します。
避ける修正
- 住所や商品名のカンマをすべて削除する。
- 列数が合うまでセルを手で移動する。
- 全角引用符で囲む。
作業後の確認
- 先頭・中央・末尾から代表値を選び、元CSVと比較します。
- 行数と列数が変わっていないことを確認します。
- Excelで使い続ける作業ファイルは.xlsx形式で保存します。
まとめ
値の一部のカンマは、フィールド全体を半角ダブルクォートで囲んで区切り文字と区別します。