みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Excel2007を使ってCSVファイルをきちんと読み込む方法を教えて下さい!

Excel2007を使って、CSVのデータを読み込みデータ整理を行いたいと
考えています。

CSVファイルは携帯電話からのアンケート応募のデータで
住所、電話番号、日付といったデータや自由に意見をかける部分があり、応募によっては入力情報内で改行されています。

「データ」→「テキストファイル」で読み込むと住所、電話番号など情報毎に表示形式を変更できるのできちんと読み取れるのですが、改行が含まれたデータはそこから次の行に勝手に改行されてしまいます。

「開く」や「Wクリック」で開くと一つの応募に対して1行で表示されるのですが、住所や電話番号などの表示形式が変わってしまいます。

どんな方法でも良いので効率の良いデータを開く何か良い方法を
教えてください。

ソフト:Microsoft Excel2007
OS:WindowsのVista
エクセルのスキル:見積もりを作ったりの計算程度の使用のみ。
         マクロとかVBAとかは手を出したことは
         ありません。
PCのスキル:Web関係の仕事をしているので何となくのプログラムの知識はある程度です。普段はAdobe系ソフト愛用者です。

投稿日時 - 2009-04-20 13:17:36

QNo.4894494

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

メモ帳でCSVファイルは中身を見れるのはご存知か。
改行とかエクセルのセル改行は決まった文字コードがそのソフトとの関連で担います(その効果が現れます。ソフトが違うとまた別だということ。ただ統一された点はある)。そういう文書における文字コードの働きや担うことを意識してますか。
文字コードにはソフトに読み込まれたとき
所定の文字を表示(大多数はこれ)
空白で表示(文字がなくて空白に置き換わる)
空白コード(空白を担っている決まったコート1つ)
特別な効果が現れる(数は限られている。改行やタブが有名です)もの
などがあります。
ーー
質問するときは、質問者のそのデータのメモ帳で表示した様子を書くべきです。
>住所、電話番号、日付といったデータや自由に意見をかける部分があり、応募によっては入力情報内で改行されています。
が読者にはあいまいです。
改行が含まれている項目はどの列(フィールド)ですか。
電話番号・日付では改行内と思うが、住所や「自由に意見をかける部分」で改行が有るのかな。
もともとCSVファイルでは、CSVファイルは改行はレコードの区切りという意味でしか使えないので、>入力情報内で改行されています、とはどういう状況下知りたい。
エクセルではセル内改行はChar(10)のコードが入っていると、そこで改行して見えます。操作ではALT+ENTERです。
ーー
様子によっては、VBAそれもプログラムロジックがうるさい形が必要かもしれません。
ーー
初めからデータのカタチを意識して作っておかないと後からでは苦労する場合が多い。プログラムを組めなければなおさらです。
CSVファイルをエクセルに読み込んだとき、セル内で改行したければ、改行の位置に代替文字を入れておく。
2009/3/1,03-2345-1234,非常に役立ちましたxありがとうございました。
を拡張子CSVで保存する。
そしてエクセルに読み込ませる。
A列  B列     C列     
2009/3/103-2451-3245非常に役立ちましたxありがとうございました。
と表示される。ここでD列に
=SUBSTITUTE(C1,"x",CHAR(10))
と入れる。
かつD1の書式を、書式ーセルー配置ー全体を折り返して表示するにチェック
それでD1は見た目が
非常に役立ちました
ありがとうございました。
になる。
ーーーー
メモ帳で直接CHAR(10)のコードを入れる操作は無い。

投稿日時 - 2009-04-20 17:50:48

補足

回答ありがとうございます。
質問の書き方が悪くて本当にすいません。
と、いうのも自分でもどう表現して良いかわからないデータなんです。
以下に状況を自分なりにわかりやすく書いてみましたので
ごらん頂ければと思います。


例えばCSVで取得している情報が「名前」「住所」「電話番号」「ご意見(これの回答を「ご意見です。」とします。)」とします。
テキストで開くと以下のように表示されます。

名前,住所,電話番号,ご意見です。

これを、Wクリック→「Excelで開く」またはExcelの「開く」から開いても以下の用に1行で表示されます。

|名前|住所|電話番号|ご意見です。

※住所内の1-1-1みたいなのが2007/1/1に変更しているものが一部ある。
※電話番号の頭の「0」がとれている



しかし、これをExcelの「外部データ取り込み」でインポートすると
以下のように2行で開かれます。

|名前|住所|電話番号|ご意見
|です。|

※この場合、表示形式をセル毎に設定出来るので上記の※印のような事はありません。

現在は仕方がないので、改行タグを読み取れるテキストエデュターTeraPadを使い改行部分を削除して、エクセルで読み込んでいますが、情報量が増えれば増えるほどこの作業が大変になってきているので質問させて頂きました。

投稿日時 - 2009-04-20 19:18:46

ANo.1

そのCSVをワード等で開いて
改行を空欄で置換してやればいいかなーと思います。
改行の置換の仕方
http://www.nurs.or.jp/~ppoy/access/etc/etc007.html

投稿日時 - 2009-04-20 13:30:13

補足

回答ありがとうございます。
試してみましたが、あまり効率よく作業が出来ませんでした。
(データの量が多いのと必要な改行タグもとれてしまう等)
せっかくご回答頂いたのにすいません・・・

投稿日時 - 2009-04-20 17:04:33

お礼

すいません。
補足のところでお礼してしまいました・・・

投稿日時 - 2009-04-20 19:00:41

あなたにオススメの質問