結論から
- CSVはフィールドをカンマで区切ってデータを保存するテキスト形式で、ブックの書式や複数のワークシートは保持できません。
- ExcelではCSVを直接開くか、「テキストまたはCSVから」で区切り文字を選び、プレビューを確認して読み込めます。直接開くと既定の解釈で日付や数値が処理され、先頭のゼロが失われる場合があります。保持したい列は読み込み時にデータ型を指定してください。
- CSV自体は受動的なテキストですが、表計算ソフトは信頼できないセルを数式として解釈する場合があります。OWASPは情報流出や、脆弱性の悪用・警告の無視と組み合わさったコンピューター侵害のリスクを挙げています。通常の引用符処理だけでは、数式インジェクションを一律に防げません。
CSVファイルの開き方・読み込み・変換
RFC 4180はCSVの一般的な構造を記述し、text/csvを登録しています。先頭に見出し行を置くことができ、レコードは通常CRLFで区切り、各レコードのフィールド数をそろえます。カンマ、改行、二重引用符を含むフィールドは二重引用符で囲み、内部の二重引用符は2個続けて記述します。
CSVをExcelに読み込み、列の型と値を確認してXLSX形式で保存します。CSVに存在しない書式やシートは復元できません。CSVへの書き出しでは、アクティブなシートに表示されているテキストと値だけが保存され、書式、グラフィック、オブジェクトなどは失われます。
開き方
ExcelではCSVを直接開くか、「テキストまたはCSVから」で区切り文字を選び、プレビューを確認して読み込めます。直接開くと既定の解釈で日付や数値が処理され、先頭のゼロが失われる場合があります。保持したい列は読み込み時にデータ型を指定してください。
ExcelではCSVを直接開くか、「テキストまたはCSVから」で区切り文字を選び、プレビューを確認して読み込めます。直接開くと既定の解釈で日付や数値が処理され、先頭のゼロが失われる場合があります。保持したい列は読み込み時にデータ型を指定してください。
CSVをExcelに読み込み、列の型と値を確認してXLSX形式で保存します。CSVに存在しない書式やシートは復元できません。CSVへの書き出しでは、アクティブなシートに表示されているテキストと値だけが保存され、書式、グラフィック、オブジェクトなどは失われます。
安全チェック
CSV自体は受動的なテキストですが、表計算ソフトは信頼できないセルを数式として解釈する場合があります。OWASPは情報流出や、脆弱性の悪用・警告の無視と組み合わさったコンピューター侵害のリスクを挙げています。通常の引用符処理だけでは、数式インジェクションを一律に防げません。
送り主が分からない、拡張子が二重になっている、中身が拡張子と合わない——一つでも当てはまるなら、開く前に確かめてください。
変換するときは
CSVをExcelに読み込み、列の型と値を確認してXLSX形式で保存します。CSVに存在しない書式やシートは復元できません。CSVへの書き出しでは、アクティブなシートに表示されているテキストと値だけが保存され、書式、グラフィック、オブジェクトなどは失われます。
元ファイルではなくコピーを変換し、変換後に画質・メタデータ・レイアウトを元と見比べてください。
よくある質問
CSVファイルとは何ですか?
CSVはComma-Separated Valuesの略で、フィールドをカンマで区切るテキストデータ形式です。見出し行を含めることができ、RFC 4180に一般的な構造が記述されています。
CSVファイルをExcelで開く方法は?
直接開くか、「テキストまたはCSVから」で区切り文字とプレビューを確認して読み込みます。日付や先頭のゼロを保持する必要がある場合は、読み込み時に列の型を指定します。
WindowsでCSVファイルを開く方法は?
WindowsでExcelを利用している場合は、ExcelからCSVを開けます。区切り方や列の解釈を確認したい場合は、テキスト/CSVの読み込み機能でプレビューを確認します。
MacでCSVファイルを開く方法は?
MacでExcelを利用している場合は、CSVを開いて日付や番号を確認します。利用中のバージョンにテキスト/CSVの読み込み機能があれば、プレビューと列の設定を使います。
CSVがExcelで1列になる場合はどうすればよいですか?
選択した区切り文字がファイルに合っているか確認します。テキスト/CSVの読み込みで適切な区切り文字を選び、プレビューで列の分かれ方を確認してください。
CSVの中国語がExcelで文字化けする場合はどうすればよいですか?
テキスト/CSVの読み込みを試し、プレビューを確認してください。文字化けが続く場合は、文字コードの不一致が原因の可能性があります。送信者に使用した文字コードを確認し、中国語を正しく読めるファイルの再書き出しを依頼してください。読み込む前に再度プレビューを確認します。
Excelへの読み込みでCSVの先頭のゼロを保持する方法は?
CSVを読み込み、識別番号などの列を明示的に文字列型に設定します。直接開くと、先頭のゼロが削除されたり、値が日付として解釈されたりする場合があります。
CSVとXLSXのどちらを使うべきですか?
フィールドに分かれたテキストデータにはCSVを使えます。複数シートや書式が必要なブックにはXLSXを選びます。CSVへの書き出しでは、それらの機能は保持されません。
ExcelでCSVをXLSXに変換する方法は?
CSVを読み込み、列の型と値を確認してXLSXとして保存します。CSVに保存されていなかった書式や追加のシートを復元することはできません。
信頼できないCSVの数式インジェクションのリスクは何ですか?
表計算ソフトがセルを数式として解釈する場合があります。OWASPは情報流出や、脆弱性・警告の無視と組み合わさった侵害を挙げています。入手元を確認してください。通常の引用符処理は万能な対策ではありません。
CSVの二重引用符をエスケープする方法は?
RFC 4180では、カンマ、改行、二重引用符を含むフィールドを二重引用符で囲み、内部の二重引用符を2個続けます。この構造上の処理は数式インジェクション対策を保証しません。
関連する形式
参考資料
RFC 4180 — Common Format and MIME Type for Comma-Separated Values (CSV) Files · IETF 信息性 RFC
Import or export text (.txt or .csv) files · Microsoft 官方支持文档
Excel formatting and features that are not transferred to other file formats · Microsoft 官方支持文档
CSV Injection · OWASP Foundation 安全资料