データのやり取りで使われる機会が多いCSVファイル。Excelで開いてみたら「文字化けしていた」「データの表示形式が異なっていた」のような経験を持つ先生もいるでしょう。
なぜこのようなことが起こってしまうのでしょうか。それはCSVとExcelは似ているようで形式が異なるからです。
そこで今回は、CSVとExcelの違いを解説します。ファイルを開く時に文字化けさせない方法についても触れているので、ぜひ最後までご覧ください。
目次
CSVファイルとExcel(エクセル)ファイルの違い
CSVファイルとExcelファイルは、いずれもリスト・データベースを扱うときによく使われるファイルです。2つの大きな違いは、互換性と機能の自由性です。
CSVはいわゆる「テキストファイル」の一種。テキスト(文字)とカンマやタブなどの区切り文字という、リストを構成するための最小限の情報でできています。カンマやタブなどの区切り文字が列(フィールド)の区切り、改行が行(レコード)の区切りとして扱われます。
シンプルな構成のため互換性が高く、Excel以外にもメモ帳や編集ソフトで開くことが可能。ただし、Excelファイルとは異なり、表示形式やフィルター機能、数式などExcel独自の機能は使えません。
例えばCSVファイルをExcelで開き、計算式を入力したり文字装飾したりして上書き保存しても、再度開きなおすとそれらはすべて消えてしまうので注意が必要です。Excel独自の機能を使って編集したら、忘れずにExcelファイルとして保存し直しましょう。
CSVファイルの作成が必要になる時
シンプルな構成のCSVですが、どのようなシーンで必要となるのか疑問に思う先生もいるでしょう。作成が必要となるシーンは、例えば以下があります。
- Excelを持っているか不明な相手にデータを送りたい時
- LMSやWebの問題演習ツールなどに、演習問題データや学生リストのデータをアップロード(インポート)・ダウンロード(エクスポート)したい時
- ファイルのデータサイズを軽くしたい時
互換性の高いCSVファイルは、複数のアプリケーションやデバイスをまたがってリストのデータを扱う際に大活躍。シンプルな作りのため、データサイズが軽くなるメリットもあります。
CSVファイルをExcelで編集する時の注意点
Excelでも扱えるCSVファイル。ですが、編集する際は以下の2点にご注意ください。
1.拡張子が異なる
一つは拡張子です。Excelファイルの拡張子は「.xlsx」、CSVファイルの拡張子は「.csv」です。
ExcelでCSVファイルを開いて編集し、再保存する際は拡張子が「.csv」になっていることを確認しましょう。例えばファイル名に「abc.csv」と記述したままExcelブック形式で保存すると、「abc.csv.xlsx」と保存されてしまいます。
一見CSVファイルのように見えますが、Excelファイルになっているので、CSVをインポートするシステムで取り込めなくなってしまうのです。保存時は形式を間違えないようにしましょう。
2.セル内の改行を使わない
もう一つはセル内の改行を使わないようにすることです。CSV形式では、改行が行(レコード)の区切りを表します。したがって、セル内で改行してしまうとレコードの区切り位置が誤認識されてしまい、他のシステムでインポートした際に本来1行であるはずのデータがバラバラになってしまう可能性があります。
「Excelで編集している間、見やすくするためにセル内の文字列を複数行で表示させたい」というような場合は、セル内改行をするのではなく、「セルの書式設定」から「折り返して全体を表示する」を使いましょう。
CSVファイルを開く・インポートする時に文字化けさせない方法(Windows・Mac)
CSVファイルをExcelでインポートすると、文字化けすることがあります。これはデータを作成した環境と開く環境が異なったために、「文字コード」などが正しく変換されなかったからです。では、文字化けを防ぐためにはどうすればよいのでしょうか。主な対処法を2つ紹介します。
方法1:メモ帳を活用する(Windowsの場合)
Windowsで文字化けさせない方法です。Excelで開くのではなく、まずはメモ帳でCSVファイルを開きましょう。
開いたらメモ帳の「ファイル」メニューから名前を付けて保存をクリックします。「名前を付けて保存」ダイアログボックスの「文字コード」プルダウンボックスを展開して以下のどちらかを選択し、保存してください。
- ANSI
- UTF-8(BOM付き)
上記手順で保存しなおしたCSVファイルをExcelで開くと、文字化けせずに表示されているはずです。メモ帳以外のテキストエディタを使用する場合は、文字コード「SJIS」を選択しても同じように文字化けを防げます。
方法2:テキストエディットを利用する(Macの場合)
こちらはMacを使った場合です。テキストエディットを使用します。「ファイル」メニューから「複製」を選択し、文字コードを以下のいずれかに変更しましょう。
- Shift_JIS
- Unicode(UTF-16)
変更したら保存して完了です。文字化けせずにファイルを開けます。
CSVデータの内容が日付に変換されてしまった時
文字化けとまではいかなくても、文字列が意図しない形式に変更されてしまうこともあります。例えば住所の番地部分が、日付形式になっているなどです。
Excelで開いて文字列が勝手に異なる形式に変更されてしまった場合は、次の方法を試してみましょう。
- Excelではなくメモ帳やテキストエディタでCSVファイルを読み込む
- すべてのデータをコピー
- Excelに直接貼りつけ
- 貼り付けたセルがすべて選択された状態で、「データ」タブの「データツール」グループの「区切り位置」ボタンをクリック
- 「コンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」を選択して「次へ」ボタンをクリック
- 「区切り文字」で「コンマ」を選択
- 変換されたくない列をクリックして「列のデータ形式」で「文字列」を選択し、「完了」ボタンをクリック
以上でCSVファイルが正しくインポートされます。
まとめ
似ているようで異なった形式のCSVファイルとExcelファイル。テキストと区切り文字で構成されたCSVはシンプルゆえに互換性と自由度が高く、様々なソフトで閲覧や編集が可能です。
ExcelでCSVファイルを扱う際には、データを壊さないよう編集方法や保存形式に注意しましょう。もし文字化けしてしまったり、勝手にデータの表示が変更されていた場合は、ここで紹介した方法を試してみてくださいね。
\ぜひ投票お願いします/
鶴巻 健太
新潟在住のSEOディレクターで「新潟SEO情報局」というサイトを運営中
ウイナレッジのコンテンツ編集を担当
朝は農業を楽しみ、昼はスタバのコーヒーと共にパソコンに向かうのが日課