Office - Excel

【Excel】CSVファイルを開くときの注意

you-tnb-298

システム間でデータをやり取りする際に使われることも多いCSVファイルですが、Excelで開いたときには、データの内容が変わってしまうこともあるため注意が必要です。

今回はCSVファイルを開くときの注意点について解説します。

なぜExcelで開かれるの?

CSVファイルをWindows上で開こうとすると、Excelが起動することが多いと思います。これは「”.csv”という拡張子のファイルを開くのは”Excel”」というふうにWindows上で関連付けされているためです。

こうすることで、ファイルを開く際に、いちいちどのアプリケーションを使うか選ぶ必要がなく、意識しなくても適したアプリケーションでファイルが開かれます。

ExcelでCSVファイルを開けば、カンマで区切られたデータが各セルにあてはめられるため、項目数が多いデータも縦が揃うので見やすくなります。

ただし、ExcelでCSVファイルを開いたときには、以下の点で注意が必要です。

Excelで開いたときの注意点

先頭の”0″が抜ける

上記のようなCSVファイルをExcelで開くとどうなるでしょう。

“項目1″のデータが”001″ではなく”1″になってしまって、以下全ての行で同様に先頭の0が無くなっています。これはExcelが数値だと自動で判断して、先頭の0を削除しているからです。

数値扱いになっているので、右寄せにもなっていますね。

前0はトリム(削除)されて、数値扱いになってしまいます。

桁数が多いと指数表記になる

では、上記のようなCSVファイルではどうでしょう?

“項目1″は先ほどと同様ですが、”項目3″がおかしな表示になってしまっています。これは桁数が多かったため、Excelが自動で数値の指数表記にしてしまった状態です。

指数表記とは桁数の多い数値や非常に小さい数値を「m×(10のn乗)」で表現したもので、上記の場合は、「9011112222」を「9.01×(10の9乗)」と表現しています。

CSVでよく扱われるデータの中では、電話番号・商品コード・JANコードなどが指数表記になってしまいがちですね。

桁数の問題なのでセルの幅を広げることで本来の値を表示することも可能ですが、”項目1″同様に数値扱いとなっているため、やはり先頭の0が抜けてしまっています。

桁数の大きな数値は、指数表記になってしまいます。

表示が変わった状態で保存しない

これまで紹介してきたように、先頭の0が抜けたり指数表記になったりした状態でファイルを上書き保存すると、そのまま先頭の0抜け・指数表記の状態で保存されてしまいます。

数値として扱うデータであればよいかもしれませんが、電話番号などは桁数が合わなくなってしまいます。そういったデータはExcelで開かない、開いたとしても上書き保存しないように注意しましょう。

表示が変わった状態で保存すると、元のデータが変わってしまいます。

データの改変を回避するには

CSVファイルを編集する際に、Windows付属アプリのメモ帳やテキストエディタを使用する、あるいはCSV専用のエディタを使用することで、データの内容が不用意に変更されるのを防ぐことができます。

CSV専用のエディタならデータも見やすく、加工もしやすいのでオススメですよ。

ABOUT ME
you-tnb-298
you-tnb-298
理系大学卒業後、音楽の専門学校へ。ギター・ドラムでの音楽活動を経て、30歳手前でプログラマーへ転身。
ウェブシステム・スマホアプリ・マクロツールなど様々な受託開発を経験した後、メーカー企業で業務アプリケーションの開発に携わる。45歳を過ぎて独立、グローナレッジ設立。
応用情報処理技術者、ウェブデザイン技能検定3級、色彩検定2級、日商簿記2級。登山は富士山経験あり、マラソンはハーフ1h58m。
記事URLをコピーしました