CSVを開いたら文字化け・0が消えた?|Excel・スプレッドシートでCSVを正しく取り込む5つのコツ

CSVを開いたら文字化け・0が消えた?|Excel・スプレッドシートでCSVを正しく取り込む5つのコツ

記事
ビジネス・マーケティング

「銀行の明細をCSVでダウンロードしたら、取引先の名前が読めない文字になっていた」
「顧客コードの『00123』が、開いたら『123』になっていた」
「品番の『1-2』が、なぜか『1月2日』に変わっていた」

請求や入金の管理で、CSVファイルを使う機会は増えています。
ネットバンキングの入出金明細、会計ソフトや販売管理ソフトの書き出しデータなど、多くのシステムがCSVでデータを出してくれるからです。

ところが、CSVをいつものようにダブルクリックで開くと、冒頭のようなトラブルが起きることがあります。
そして気づかないまま上書き保存してしまうと、元の値が失われてしまいます。

この記事では、CSVをExcelやGoogleスプレッドシートに正しく取り込むための5つのコツを、できるだけ平易にまとめます。


━━━━━━━━━━━━━━
■ そもそもCSVとは?
━━━━━━━━━━━━━━

CSVは、データを「,(カンマ)」で区切って並べただけの、とてもシンプルなテキストファイルです。
文字の大きさや色、「この列は文字」「この列は日付」といった情報は持っていません。

そのため、Excelなどで開くときに、ソフトの側が「これは数値だろう」「これは日付だろう」と判断して変換します。
文字化けや「0が消える」問題の多くは、この「開くときの判断」がずれることで起きます。


━━━━━━━━━━━━━━
■ CSVを正しく取り込む5つのコツ
━━━━━━━━━━━━━━

02_CSV取り込み5つのコツ.png

① 元のCSVはそのまま保管し、コピーで作業する
CSVを開いたときに値が変わっていても、ファイル自体はまだ元のままです。
ところが、その状態で上書き保存すると、変わってしまった値(0が消えた番号、日付になった品番など)がそのままファイルに残ります。
ダウンロードしたCSVは「元データ」として別のフォルダに置き、作業はコピーしたファイルで行いましょう。
困ったときに、いつでも元のデータに戻れます。

② 文字化けしたら「文字コード」を合わせて開く
文字化けの主な原因は「文字コード」の違いです。
文字コードとは、文字をコンピューターの中でどう表すかの決まりで、CSVではUTF-8(ユーティーエフエイト)やShift_JIS(シフトジス)などが使われます。
日本語のExcelはCSVをダブルクリックで開くとShift_JISとして読み込むため、UTF-8で作られたCSVは文字化けすることがあります。

Excelでは、次の手順で文字コードを選んで取り込めます。
1. 空のブックを開き、[データ]タブ→[テキストまたはCSVから]をクリック
2. CSVファイルを選んで[インポート]
3. 表示された画面の[元のファイル]で「65001: Unicode (UTF-8)」を選ぶ
4. プレビューで文字が正しく見えたら[読み込み]

出力する側のシステムで文字コードを選べる場合は、使うソフトに合わせて選んでおくのも一つの方法です。

③ 先頭の0・長い数字・日付っぽい文字の「自動変換」を止める
Excelは、CSVを開くときに次のような変換を自動で行うことがあります。
・先頭の0を消して数値にする(00123 → 123)
・長い数字を15桁までにし、必要に応じて「1.23E+15」のような指数の形にする
・日付のように見える文字を日付にする

顧客コード、請求番号、口座番号など「数字だけれど計算しない番号」は、この変換で値が変わってしまいます。

Microsoft 365やExcel 2024では、[ファイル]→[オプション]→[データ]の「自動データ変換」で、これらの変換をそれぞれ止める設定ができます(Microsoftのサポートページより)。
なお、この設定は②の[テキストまたはCSVから](Power Query)での取り込みには直接は効きません。
Power Queryで取り込むときは、プレビュー画面の[データの変換]から、番号の列のデータ型を「テキスト」にしてから読み込みましょう。

④ Googleスプレッドシートでは「インポート」で取り込む
スプレッドシートでは、[ファイル]→[インポート]からCSVを取り込めます。
取り込むときに、区切り文字の種類や、「テキストを数値、日付、数式に変換する」かどうかを選べます。
番号の0を残したいときは、この変換のチェックを外して取り込むと、文字のまま取り込めます。
文字化けする場合は、出力元のシステムでUTF-8を選べるか確認してみてください。

⑤ 取り込んだら「件数」と「合計」を確かめる
最後に、取り込みがうまくいったかを確かめます。
・行数:元のデータの件数(見出しの行を除く)と、取り込んだ行数が同じか
・合計:金額の列の合計が、元のデータ(通帳や管理画面の合計など)と同じか
・番号:先頭が0の番号や、長い番号が元のままか
この3つを見ておけば、取り込みの失敗にすぐ気づけます。


━━━━━━━━━━━━━━
■ どの開き方を選べばいい?
━━━━━━━━━━━━━━

03_CSVの開き方くらべ.png


・ダブルクリックで開く
→ いちばん手軽です。中身をちょっと見るだけなら、これで十分です。ただし、そのまま上書き保存はしないようにしましょう。

・Excelの[テキストまたはCSVから]
→ 文字コードや列のデータ型を選べます。Excelで集計や照合をするなら、この方法が安心です。

・スプレッドシートの[インポート]
→ 数値や日付への変換をするかを選べます。取り込んだ表を、複数の人で共有して見たいときに向いています。

毎月同じCSVを扱うなら、「この明細はこの方法で開く」と手順を決めて、メモに残しておくと迷わずに済みます。


━━━━━━━━━━━━━━
■ それでも手間なら:請求と入金の照合をCSVだけで行えるツールがあります
━━━━━━━━━━━━━━

「CSVを開いて、請求の一覧と見比べる作業そのものを減らしたい」という方向けに、請求一覧のCSVと銀行明細のCSVを読み込んで、照合の結果を一覧にするツールをご用意しています。

・未入金/入金不足/過入金/不明入金を一覧で表示
・ブラウザで開いて使え、データは外部に送信しません
・お手持ちのCSVで動くか不安な場合は、ご購入前に見出し行(1行目の列名)をお送りいただければ確認します

くわしい内容や料金は、下のサービスページでご確認ください。



※照合はあくまで確認の補助です。結果は必ず人の目でご確認ください。

━━━━━━━━━━━━━━
■ まとめ
━━━━━━━━━━━━━━

CSVを正しく取り込むための5つのコツをおさらいします。

① 元のCSVはそのまま保管し、コピーで作業する
② 文字化けしたら「文字コード」を合わせて開く
③ 先頭の0・長い数字・日付っぽい文字の「自動変換」を止める
④ Googleスプレッドシートでは「インポート」で取り込む
⑤ 取り込んだら「件数」と「合計」を確かめる

いちばん大事なのは、「ダブルクリックで開いて、そのまま上書き保存」をしないことです。
開き方を少し変えるだけで、毎月の明細の確認がぐっと安心になります。
日々の事務作業が、少しでも楽になるきっかけになればうれしいです。
サービス数100万件のスキルマーケット、あなたにぴったりのサービスを探す