ツール活用ガイド > CSV整形のガイド

CSV整形のガイド|列ずれ・文字化け・引用符の基本と直し方

システムからダウンロードしたCSVファイルをExcelで開いたら列がずれている、住所の一部で表が崩れる、日本語が文字化けする。CSVは単純な形式に見えますが、実際には「カンマで区切る」以上の約束事があり、そこを外すと静かに崩れます。このガイドでは、CSVの基本ルール、崩れる典型パターン、渡す相手に合わせた整え方を、具体例つきで解説します。

CSVの基本ルールは3つだけ

CSV(Comma-Separated Values)は、1行を1件のデータとし、項目をカンマで区切って並べたテキストファイルです。多くの場合、1行目が見出し(ヘッダー)になります。

名前,金額,日付
山田商店,12000,2026-11-01
佐藤電機,8500,2026-11-03

守るべきルールは主に3つです。第一に、すべての行で項目の数をそろえること。第二に、項目の中にカンマ、改行、ダブルクォートが含まれる場合は、その項目全体をダブルクォートで囲むこと。第三に、項目内のダブルクォート自体は、2つ重ねて "" と書いて表すことです。この3つを満たしていれば、大半のソフトで正しく読み込めます。

列ずれの最大の原因は「項目内のカンマ」

たとえば住所の「東京都千代田区1-1, ビル3F」や金額の「12,000」のように、項目の中にカンマが入っていると、そのままでは別の区切りとして解釈され、後ろの列がすべてずれます。正しくは項目全体を引用符で囲みます。

書き方読み込まれ方
請求書,12,000,11月分「12」と「000」が別項目になり、4項目に増えて列がずれる
請求書,"12,000",11月分「12,000」が1項目として正しく読まれる
彼は"了解"と言った を含む項目"彼は""了解""と言った" のように囲み、中の引用符を二重化する

項目内に改行が含まれる場合も同じで、引用符で囲めば1項目として扱われます。逆に、引用符で囲まれていない改行は「次の行の始まり」とみなされるため、件数が合わなくなる原因になります。データを渡す前に、行数と項目数をざっと確認するだけでも、大きな崩れは早期に見つけられます。

Excelで文字化けするのは文字コードの違い

CSVそのものには文字コードの情報が含まれていないため、開く側が推測を外すと文字化けします。一般に、Webシステムから出力されるCSVはUTF-8が多く、Windows版のExcelは環境によって別の文字コードとして開いてしまうことがあります。文字化けした場合は、ファイルをダブルクリックで開くのではなく、Excelの「データ」タブからテキストファイルとして取り込み、文字コードにUTF-8を指定すると正しく読めることが多いです。

逆に、自分がCSVを作って相手に渡す場合は、相手の環境に合わせるのが安全です。相手がWindowsのExcelで開くことが分かっているなら、文字コードや改行コード(CRLF)の指定がある取り込み手順を一文添えるだけでも、問い合わせは大きく減ります。ファイル名や項目名だけを変えても文字化けは直らない点も、よくある誤解です。

先頭の0が消える・日付が変わる問題

郵便番号「001-0001」や商品コード「00123」をExcelで開くと、先頭の0が消えて数値として扱われることがあります。これはCSVの不具合ではなく、表計算ソフトが「数字だけの項目は数値」と自動判定するためです。コード類は文字列として扱う必要があるため、取り込み時にその列の形式を「文字列」に指定してください。日付や長い数字の入ったIDでも同様の自動変換が起こり得るので、重要な列は開いた直後に元の桁数と見比べる習慣が役立ちます。

整形するときの手順

受け取ったCSVを整えるときは、次の順序が扱いやすい方法です。まず文字コードを確認して文字化けを解消し、次に見出し行の重複や空欄を直します。続いて項目内のカンマ・改行・引用符が引用符ルールに従っているかを確認し、最後に全行の項目数が見出しと一致しているかを数えます。順序を逆にして列ずれの修正から始めると、文字化けした状態で判断することになり、二度手間になりやすくなります。

よくある質問

Q. TSVとの違いは何ですか?
A. 区切り文字がカンマではなくタブになった形式がTSVです。項目内にカンマが多いデータでは、TSVのほうが引用符処理が少なくて済む場合があります。ただし、受け付ける形式は相手のシステム次第なので、指定があればそれに従ってください。

Q. すべての項目を引用符で囲んでもいいですか?
A. 多くの読み込みソフトでは問題ありません。項目ごとに囲むかどうかが混在するより、全体で統一されているほうが読み手にも機械にも分かりやすくなります。ただし、相手システムの仕様で引用符なしが指定されている場合はそちらが優先です。

Q. 最終行に空行があっても大丈夫ですか?
A. 空の1件として読み込むソフトもあるため、末尾の不要な空行は削除しておくのが無難です。ファイル末尾の改行そのものと、空行が1行余分にある状態は別物として区別してください。

まとめ

CSVの崩れは、ほとんどが「項目内のカンマ・改行・引用符」「文字コード」「表計算ソフトの自動変換」の3か所に集まります。引用符のルールを守り、取り込み時に文字コードと列の形式を指定するだけで、大半のトラブルは防げます。渡す前と開いた後に、項目数と桁数を一度確認する習慣を付けてください。

ツール: CSV整形・CSV/JSON変換(saikouda.trade)