CSVデータの0がエクセルで開くと消える理由 CSVに変更を加え上書き保存したい時の方法

こんにちは。nekonomoridesignのYoshyです。最近はもっぱらEC CUBEでつくったサイトの商品ページを作るためにCSVでデータを作っていっている日々。CSVの編集には色々注意点が要るのをご存知でしょうか?

CSVデータで、0(ゼロ)が最初に来ている場合、エクセルで開くと0がなくなってしまう

これは、CSVデータを取り扱う初期に絶対にぶつかってしまう壁ですね。そもそも、CSVデータとは、値をカンマ(,)で 区切って書いているテキストデータファイルです。
テキストデータファイルなので、エクセルが無くても開けるデータなのです。メモ帳でだって開けます。
オフィスが入っているパソコンの場合、エクセルみたいなアイコンになっているかとおもいますが、あくまでCSVデータは【テキストデータ】なのです。
では何故、エクセルでCSVデータを開くと0(ゼロ)が消えてしまうのか。

エクセルは本来テキスト情報として入っているはずの0も、「数値」として認識しているから

CSVデータとして保存されている0を含む数字情報は、本来、おそらく住所や電話番号などの「テキスト情報」として格納されているはずなのですが、エクセルで開くと、数字情報=数値として扱ってしまいます。

そのため、エクセルでCSVを一度開いて、何か変更を加えて上書き保存すると、「0」が消えた状態で保存されてしまいます。

CSVデータに変更を加えたい時に使うソフトをどうしてもエクセルにしたい

せっかく入っていた正しい情報がエクセルで開いてしまったがためにデータがおかしくなった!おかげでデータベースソフトでの取りこみでエラーが生じた!

・・・なんてことは、結構日常茶飯事見かける光景です。

でも、エクセル以外でどうやって編集すれば?
CSVでデータを作ったり変更したりしたい、っていう時はありますよね。

何にせよ、数字を数値として認識してしまうエクセルさんの場合、.csv形式のファイルである場合はどうあがいても数値として認識してしまいます。
そんな時は、ファイルの拡張子を変えてしまいましょう。

  1. 先ず、開きたいcsvファイルをデスクトップなど判りやすいところに保存します。
  2. 保存したら、そのファイルの.csvを、.txtに書き換えます。
  3. 拡張子を変えるとファイルが開かなくなる恐れが・・・とかいうメッセージを無視して書き換えます。
  4. エクセルを立ち上げます
  5. ファイル→開く から、先ほど拡張子を変更した.txtを指定します。
  6. 選択したデータは区切り文字で区切られています みたいな感じで何か出てくるので、「カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」のほうにチェックを入れて、次へ
  7. 区切り文字は カンマ に指定
  8. 区切った後のデータ形式は 「文字列」 に
  9. 完了

コレで、エクセルで、0が消えない状態でCSVデータを開く事が出来ます。

その後、エクセル上で編集し、txtのまま上書きします。

全ての変更作業が終わったら、エクセルを閉じ、.txtにしたファイルを.csvに戻せばOKです。

可能であれば、csvデータの編集にはテキストエディタを使おう

エクセルでどうしても開きたいという場合は、先ほどの手順でするしかありませんが、それでも、完全に0が消えないようにというのは難しいかもしれません。

可能であれば、私は、 Terapad 等のテキストエディターを使って開く事をお勧めします。

テキストエディタ系ソフトは、列ごとにきちんと表示もされますし、見やすくて良いです。検索もしやすいので、ちょっとした変更ぐらいでしたら、メモ帳などのエディターでも十分かと思います。

この場合、拡張子は.csvのままでも問題ありません。

さらに可能であれば、csvデータ編集はファイルメーカーが最適

ココまで来るともう好みの問題もありますが、私はFilemakerで開くのがすきです。
ファイルメーカーで開くと、そのままデータベース作成になりますが、そのまんま取り込んで編集するだけでもかなり楽ですし、同じ文字を繰り返して入力する事がある場合などは、「値一覧」などで入れたりすることも出来ます。

ファイルメーカーは、初心者でも慣れ親しみやすいデータベース

私も社会人になってから初めて触りましたが、独学でも結構スムーズにデータベースを作成する事が出来たりします。

結局、今の仕事でも、CSVでページデータを作るために、Filemakerに取り込んで、簡易の自分用のページ編集ソフトを作成しています。

このように、ちょっと手間を減らせる等の利便性もあるので、csvデータを変更したりする場合は、Filemakerの導入を検討して見ても良いと思います。

0が消えてデータが取り込めない!なんてこともFilemakerでは起こりません。

何にせよ。。。昨今、CSVデータが主流となりつつあります。一般の会社でもよくCSVデータというものを必要としたりすることがあると思います。

誤って、0を消してしまわぬよう、CSVデータを開く時はエクセルで開かない!くらいの意識で居て欲しいなと思います。

また今度、ゆっくりFilemakerの魅力について語りたいと思います(笑)

それでは~また!