• ベストアンサー

csvファイルの電話番号が正しく表示されない

取引先のデータをExcelのcsv形式ファイルでもらったのですが,電話番号の項目がおかしく なって困っています。具体的には電話番号の上1桁めの「0」が欠落してしまっています。 csvファイルをメモ帳で開くと電話番号が「03XXX・・・」なのに,Excelで開くと「3XXX・・・」と なってしまいます。 電話番号の項目の書式をあらかじめ文字列にしておくというようなやり方はあるのでしょうか。 電話番号の上1桁めは市外局番でも携帯でも「0」なのでほぼ全滅状態で困っています。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yosi_yosi
  • ベストアンサー率35% (165/468)
回答No.5

Excelにて事前に指定することは出来ません。 CSVファイルを読み込むそのつど、#4さんが提示されたようにする必要があります。 面倒な場合には、とりあえず読み込んでおいて後でマクロ(VBA)なりで整形すると言った方法もありですが...

shihochu
質問者

お礼

事前に書式を指定してスコンとファイルを読み込みたかったのですが無理なことが理解できました。 テキストファイルを区切り文字指定で開いて読み込むのは,項目が多いと大変なのでできれば避けたかったのですが,今回のようなケースで書式を指定したい時はこの方法しかないこともよくわかりました。 そもそもファイルの開き方でインポートするやり方も知らなかったので勉強にもなりました。皆様ありがとうございました! ポイントは皆様に差し上げたいのですがそうもいきませんので複数回答をいただいた方優先ってことでご理解ください(^.^)

その他の回答 (4)

回答No.4

ファイルをそのまま読み込むのではなく 「データ」>「外部データの取り込み」>「テキストファイルのインポート」して下さい。 項目毎に書式を指定できますから,そのような不都合はなくなります。

shihochu
質問者

お礼

ファイルをテキスト形式にしてExcelで区切り文字指定を して読み込むのとほとんど同じ感じなんですね。。。 列ごとに書式を変えるところで,電話番号の列を文字列に すれば頭の「0」もついたままでした。

noname#22222
noname#22222
回答No.3

即答ではありませんので聞き流して下さい。 通常、電話番号は、 0011111111 は、 11111111 と入力し 書式="0000000000" とするようですから、<全滅状態>ではなく<完全正常>ではないでしょうか? ※単に、書式を指定すれば済むだけと思いますが...

  • yosi_yosi
  • ベストアンサー率35% (165/468)
回答No.2

もともとのCSVファイルで電話番号を「"」で囲って明示的に文字列として扱うか、それともExcelに取り込む際に電話番号を含む行を文字列と指定するかですね。

shihochu
質問者

補足

ご回答ありがとうございます。 >もともとのCSVファイルで電話番号を「"」で囲って明示的に文字列として扱うか、 csvファイルを編集加工するのは大変なのでこれは無理かも・・・です >それともExcelに取り込む際に電話番号を含む行を文字列と指定するかですね。 Excelで取り込む際に前もってある列の書式を指定することは可能でしょうか? その方法がわかれば解決できるような気がするのですが・・・

  • akio_myau
  • ベストアンサー率34% (515/1480)
回答No.1

EXCELでCSV形式をそのまま取り込んだ場合最初の0が消えるのは仕様になります。拡張子をCSVからTXTに変更して、ファイルを読み込めばテキストウイザードが働くのでそこで該当の列を文字列に指定すればうまくいくと思います。

関連するQ&A

専門家に質問してみよう