0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ExcelからCSV保存する時のトラップ

Last updated at Posted at 2025-01-25

Excelを使ってCSVファイルを保存するとき、保存形式によってファイルの先頭に余計な文字列が付くことがある。この現象について、原因と対応策を整理した。

現象:CSVファイルに謎の文字が付与される

Excelで「名前を付けて保存」を使ってCSV形式で保存したファイルを他のシステムへインポートしようとしたとき、先頭に「・ソ」という文字が表示されることがある。
(↓Accessのインポート画面)
image.png

再現手順

  1. Excelで「名前を付けて保存」を選ぶ。
  2. ファイルの種類を「CSV UTF-8(コンマ区切り)」に設定して保存。
  3. 作成したCSVファイルをAccessで開くと、先頭に「・ソ」が表示される。

一方で、「CSV(コンマ区切り)」を選んで保存した場合、この問題は起きなかった。
image2.png

原因:BOM(Byte Order Mark)

この問題は、BOM(Byte Order Mark)というマーカーに起因する。

BOMとは

BOMとは、ファイルの文字コードを示すために、ファイルの先頭に付加されるデータのこと。UTF-8形式では、BOMが付与される場合がある。

問題になる理由

BOM付きファイルを扱うと、一部のソフトウェアではBOMが不要な文字として処理される。具体的には、Accessにインポートすると、データの先頭に余計な文字が入ってしまう。逆に、BOM付きでないとエラーになるシステムも存在するとのこと。

対応策

BOMが原因で問題が起きる場合、以下の方法で対処できる。

保存時の選択肢

  1. 「CSV(コンマ区切り)」を選ぶ
    • この形式ではBOMが付かない。
  2. 「CSV UTF-8(コンマ区切り)」を避ける
    • この形式だとBOMが付く。

ファイル確認方法

保存したCSVファイルをメモ帳やテキストエディタで開き、「BOM付き」と表示されるかどうかで確認できる。
image4.png

結論

ExcelでCSVを保存するときは、保存形式を意識して選ぶ必要がある。BOMが原因で問題が出るなら、「CSV(コンマ区切り)」を使えば回避できる。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?