CSVをシステムへ取り込む直前に「どの行を直せばいい?」と探し始めると、原因も修正箇所も混ざりがちです。取込先の必須項目や書式を先に確認し、元CSVのコピーで空欄・重複・桁数の上限を点検すると、直す場所を絞れます。
ここでは架空の商品一覧を使い、問題のある行を見つけ、修正した別データで再検査するところまで試します。2つのファイルの違いを探したいならCSVの比較方法が別の用途です。
まずは取込先のルールを、列ごとに確認する
「商品コードは必須で重複不可」「数量は必須で半角数字のみ」といった今回確認したい条件を、取込先の仕様から拾います。ここでは次の架空のルールを仮定します。実際の取込先の要件ではありません。
- 2列目の商品名は必須。
- 3列目の数量は必須で、半角の
0〜9だけで構成する。 - 1列目の商品コードは重複不可。この例では商品コードが全行入力されている前提にする。
「数量は0〜9だけ」と「小数や負数を許す」は別の仕様です。後者が必要なデータに半角数字のみの検査を当てはめると、正しい値まで指摘してしまいます。取込先の説明が見つからない場合は、自分の推測で条件を作らないでください。

問題入りの架空CSVを、行ごとに見る
次のCSVには4データ行あります。業務データではありません。
商品コード,商品名,数量
001,ノートA,10
002,,5
002,封筒,12.5
003,ファイルC,123
空欄の項目を探すだけでなく、同じ 002 が2行にあること、12.5 に小数点が入り、123 は3文字であることを確認します。CSVファイルの行番号は見出し行を含みますが、以下でいう「データ行」は見出しを除いた1行目から数えます。
CSVチェックで規則を設定する
CSVチェックを開き、上のコード枠をコピーして「表を貼り付け」欄へ入れます。ファイルとして保存する必要はありません。区切りを「カンマ(CSV)」にして「見出し・先頭行を確認」を押します。見出しが3列に分かれ、001 が保たれているかを最初に確認してください。
続いて検査規則を次のように指定しました。
- 規則1:列番号 2(商品名)、必須を選ぶ。
- 「規則を追加」で規則2:列番号 3(数量)、必須と半角数字のみを選び、最大文字数を 2 にする。
- 「重複キー列を追加」でキー列番号 **1(商品コード)**を指定する。
- 「CSVをチェックする」を押す。
問題6件・問題のある行3行・入力4行と表示されました。「件」は指摘の数で、「行」は指摘のある元データ行の数です。同じ行に複数の問題があれば件数のほうが多くなります。
| データ行 | 列 | 表示された問題 | 元の値 |
|---|---|---|---|
| 2 | 商品名 | 必須違反 | 空欄 |
| 3 | 数量 | 最大2文字を超過・半角数字のみ(0〜9)の2件 | 12.5 |
| 4 | 数量 | 最大2文字を超過 | 123 |
| 2 | 商品コード | キー重複 | 002 |
| 3 | 商品コード | キー重複 | 002 |
「商品コードの重複」は片方だけのエラーではありません。同じコードを持つ両方の行が候補になります。どちらかを機械的に削除するのではなく、2行が別の商品・別の明細なのか、元の台帳を確認します。
CSVチェック
空欄・文字数・数字・重複を指定した規則で点検できます。別サイト・別タブで開きます。
取込条件と練習用CSVを手元へ残す
取込条件のチェック表(Excel)に、列ごとの必須・文字数上限・数字・重複キー・確認先を記入できます。配布表の初期値は検査規則ではありません。取込先の仕様を見てから埋めてください。
本文の問題入りCSVと修正後の架空CSVも保存できます。元ファイルを残し、まず問題入りを本文と同じ規則で調べ、その後に修正後を試してください。修正後のコード 005 は説明用の別データで、業務のコードの変更指示ではありません。
桁数は「上限」と「ちょうど何桁」を区別する
ツールの「最大文字数」は、入力した文字の上限を調べます。0 にしておけば文字数の検査はしません。数え方はUnicodeのコードポイントで、Excelの LEN やCSVファイルのバイト数と同じとは限りません。仕事で「商品コードは最大3文字」と決まっているなら、コード列に最大文字数 3 を設定する使い方があります。
一方、「ちょうど3桁であること」は最大3文字の検査だけでは保証できません。2桁の 01 も上限には収まります。数量の 12.5 も、半角数字のみの規則では不適合になりますが、小数を許す取込先なら検査規則のほうを見直す必要があります。規則が表現できない要件は、取込先の仕様と元システムで別途確かめてください。
元を直し、同じ条件で再検査する
ツールは元値を自動修正しません。原因を元の資料で確認したうえで、別の架空データとして次のように用意し直しました。実務のコードを根拠なしに 002 から 005 へ変える提案ではありません。
商品コード,商品名,数量
001,ノートA,10
005,ペンB,5
002,封筒,12
003,ファイルC,8
同じ検査規則で再実行すると問題0件・問題のある行0行・入力4行でした。これは指定した規則に該当する問題がなかったという意味で、業務上の数字が正しい、取込が必ず成功するという意味ではありません。
出力する確認リストと原本を分け、元データをどこで修正したかを残してください。実データなら社内の外部ツール利用ルールを確認し、顧客名やCSVの中身を記事や公開画面に載せないことも必要です。文字数の数え方や複合キー、空欄の扱いはCSVチェックの使い方にまとまっています。
次に取り込む形式の列名や列順そのものが違う場合は、検査と変換を混同せず、取込先の列仕様を確認してからCSV列合わせを検討してください。
仕入先品番を自社品番へ読み替えてから取り込む場合は、品番対応表の未登録・重複を確認する手順も参照してください。対応表の必須欄と複合キーの重複を点検しても、取引一覧の品番がすべて登録済みとは限りません。対応先が1つに決まる行と、元資料へ戻って確認する行を分けてから進めます。
あわせて読みたい
仕入先品番と自社品番が違うときのCSV照合|対応表の未登録・重複を確認
仕入先と自社で品番が違うCSVを照合する前に、対応表の未登録・複数対応・空欄を確認します。仕入先コードと品番を組み合わせ、変換を止める行を架空CSVと確認表で見分ける手順を説明します。
CSV比較で重複キーが出る理由|品番だけで行を決めない確認方法
同じ品番が複数行にあるCSVを比べると、なぜ判定不能になるのか。架空の倉庫別一覧と配布CSVを使い、品番と倉庫を組み合わせる手順、差異の読み方、元データへ戻る判断を説明します。
新旧の単価表をCSVで比較する方法|変更された品番を確認する
新旧の単価表をCSVで照合し、変更された品番を探す手順です。100と100.0、桁区切り、空欄と0などの5例で、文字の違いと価格改定を分けて確認します。練習用の新旧CSVと期待結果を配布します。

