CSVをインポートできないときの確認順序
CSVの取込エラーを文字コード、区切り文字、列数、引用符、入力条件の順に切り分けます。誤ったCSVと修正例、セル内改行の数え方を掲載。
更新: · PitaTool
まず、どの段階で失敗しているか確認
元のCSVをコピーして保管し、エラーメッセージと取込仕様を確認します。日本語が読めないなら文字コード、全体が1列になるなら区切り文字、途中から列がずれるなら引用符を先に調べてください。
| 症状 | 確認すること | 次の操作 |
|---|---|---|
| 日本語が崩れる | 出力元と取込先の文字コード | 正しく読める文字コードを選ぶ |
| すべて1列になる | カンマ・タブ・セミコロンの違い | 実際の区切りで診断する |
| 特定行だけ列が多い | 値の中の区切り文字と引用符 | 元のセルの範囲を確認する |
| 引用符エラー・後半を読めない | 閉じ引用符、値の中の引用符 | エラー位置から元データを確認する |
| 先頭の列名が認識されない | 列名の完全一致、BOMの扱い | 取込仕様と照合する |
| 構造は正常でも拒否される | 必須項目・重複キー・許可文字・上限 | 接続先の入力ルールを確認する |
1. 文字コードと区切り文字を合わせる
日本語を正しく読める文字コードを指定してから、取込先が要求する区切りを確認します。拡張子が.csvでも区切りがカンマとは限りません。判定候補が複数ある場合はプレビューと出力元の設定を照合してください。
例の「ID[タブ]備考」をカンマで読むと、各レコードは1列です。列数がそろっているため、列数チェックだけでは区切りの間違いを検出できません。期待する列名・列数も確認します。
ID 備考
001 東京
2. 列数が合わないときは値の中のカンマを確認
次の例では見出しが2列なのに、2レコード目が3列になります。「東京,大阪」を1つの値として渡すなら、値全体を二重引用符で囲みます。
ID,備考
001,東京,大阪
修正後は2レコード・各2列。ID「001」と備考「東京,大阪」を別々の値として読み取れます。
ID,備考
001,"東京,大阪"
単純なカンマの一括置換では、列の境界と値の中のカンマを区別できません。出力元のセルを直して再出力するか、どこまでが1つの値かを確認して修正します。
3. 引用符とセル内改行を確認する
値の中の二重引用符は2つ重ねます。引用符で囲まれたセル内には改行を含められるため、テキストの行数とCSVのレコード数は一致しないことがあります。次はヘッダーを含む3レコード・各2列で、3レコード目は物理行4から始まります。
ID,備考
001,"東京
大阪"
002,"引用符は""二重"""
一方、次の例は物理行2からの引用符が閉じていません。PitaToolは境界未確定として停止し、確定したヘッダー以外の行数を断定しません。勝手に末尾へ引用符を足すと、複数のデータ行を1つのセルにまとめる危険があります。
ID,備考
001,"東京
002,大阪
これらはRFC 4180に記載された一般的なCSV形式に沿った例です。すべてのサービスがセル内改行を受け付けるとは限らないので、接続先の仕様も確認してください。
4. 構造が正常なら入力条件を確認する
- テンプレートと列名・列順・必須列を比較する。
- キー列を指定して重複を調べ、空欄や桁数、日付形式を取込仕様と照合する。
- 使用できない文字のエラーなら、文字コードの制限と項目別ルールを分けて調べる。
- 数件で再取込を試し、IDの先頭ゼロ・件数・日本語を確認してから全件を処理する。
CSV診断は特定のサービスの必須項目や登録済みID、ファイル容量上限までは判定しません。見えない文字が疑わしい場合も、改行やタブを一括削除すると構造が変わるため、該当セルを確認して修正してください。
ツールで確認する
CSV診断・エラーチェックを使う →関連する解決ガイド
参考資料・検証の前提
具体例は各項目に示す条件に基づきます。ソフトの版や受け渡し先の仕様も確認してください。