• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CSVをExcelに変換したい)

CSVをExcelに変換する方法とは?

このQ&Aのポイント
  • CSVファイルをExcelファイルに変換する方法は、CSVファイルをExcelで開いて拡張子を「xls」もしくは「xlsx」を指定して保存することです。
  • しかし、PCにExcelがインストールされていない場合は、Excelで変換することができません。
  • その場合には、別の方法としてAccessなどのツールを使用してCSVファイルを読み込んでExcelファイルに変換することができます。

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

  • ベストアンサー
回答No.4

>Accessにてツールを作成し、CSV(カンマ区切り)のデータを読み込もうとしておりますが、そのデータの中には単語の中にカンマが含まれているものがある為、普通にCSVをインポートしようとすると、ズレてしまいます。 毎回同じCSVのフォーマットだったら (項目数やデータ型など) 一度インポートウィザードで進めて行って 設定ボタンから定義を保存し 次回からはその定義名を使用してインポートしては? VBAならDocmd.transferText のヘルプにあるSpecificationNameに定義名を入れます。 ・・・じゃダメかいな? >インポートする前準備としていったんExcelに変換したい CSVファイルを直接開くとExcelのお節介機能で 電話番号などの前ゼロがなくなったり、ハイフン付きのデータが日付と解釈されたり・・・ ということががあるので、拡張子CSVをTxtに変えてから Excelで開こうとするとウィザードが立ち上がって・・・と出来ますが 結局のところ二度手間です。 ご参考まで。

この投稿のマルチメディアは削除されているためご覧いただけません。
naoto0216
質問者

お礼

NotFound404さま いつもご回答ありがとうございます。 例えば、  ID 項目1 項目2  1  ああ   835  2  いい   121  3  うう    832  4  ええ  1,053  5  おお  5,231 という内容のCSVファイルをインポートする場合、インポートウィザードでは自動的にフィールド4が生成され、  ID 項目1 項目2 フィールド4  1  ああ   835  2  いい   121  3  うう    832  4  ええ    1   53  5  おお    5  231 に区切られてしまいます(要するにカンマで区切られてしまう)。 このような場合、インポート定義しておけば項目2がカンマで区切りされない・・ということでしょうか? 実際に、インポートウィザードを開いて定義の画面を開いている状態なのですが、どこをどうすれば区切られなくできるのかわかりません。 その辺をご教授頂けると幸いです。

naoto0216
質問者

補足

ウィザードにある  フィールド区切り記号は「カンマ」  テキスト区切り記号を「”」 にすることで、項目2が区切られずにインポートすることができました! ありがとうございました。これを定義に登録したので、VBAでインポートするときにこの定義名を指定してあげればってことですよね。 早速試してみたいと思います。 ありがとうございました。

その他の回答 (3)

noname#199520
noname#199520
回答No.3

パソコンにメモ帳があるから、それで読み込んで編集できますよ そして、拡張子はcsvのままで保存

naoto0216
質問者

お礼

miura8miiuraさま ご回答ありがとうございます。 また、説明不足で申し訳ございません。単語にカンマが含まれているものはダブルクォーテーションで囲まれてます。 確かにメモ帳で開いて編集することは可能ですが。。 当該CSVファイルは約60万行あります。なので、「単語にカンマが含まれるもの」を何らかの方法で検索し、カンマを別の文字列に変換し、インポート後にその文字列をカンマに戻すというような処理をしなければなりませんので、その処理だけで結構重くなることを懸念しております。 また、「単語にカンマが含まれるもの」を見つける為のプログラムを作り込まなければなりません。 なので、単純にExcelに変換すれば問題なくインポートできるようになるので、それが一番いいかなと思った次第です。

  • asciiz
  • ベストアンサー率70% (6803/9674)
回答No.2

>スキマソフトウェア:CSV to Excel >http://soft.sukima.client.jp/csv2excel/ このようなものがありました ダブルクォートで囲っているものは1つの文字列として処理するなど、ちゃんとやってくれるようです。

naoto0216
質問者

お礼

asciizさま ご回答ありがとうございます。 当該ソフトはコマンドラインでも使えるようなのでよさそうですね。 但し、 >列数 39、行数 1000、約 300 KB の CSVファイルの変換時間は、約40秒 との記載がありました。 今回のCSVは約60万行(14列)あるので、単純に計算すると400分。。6時間以上かかることになりますが、とりあえず検証してみたいと思います。 ありがとうございました。

  • kteds
  • ベストアンサー率42% (1882/4440)
回答No.1

> ・・・そのデータの中には単語の中にカンマが含まれているものがある為、・・・ そのようなデータであればExcelでも不都合が発生します。 まずはcsvとして扱えるようにデリミッタ(区切り文字)を正確に付けておくことから始める必要があります。 csvは何もExcelでなければ扱えないということはありません。 たとえばフリーのLibre Officeでも扱えます。 PowerShellでも簡単に扱えます。 いずれにしてもデリミッタを識別してデータ処理するものです。

naoto0216
質問者

お礼

ktedsさま ご回答ありがとうございます。 説明不足で申し訳ございません。当該CSVファイルで単語にカンマが含まれているものに関しては、ダブルクォーテーションで囲まれてます。なので、Excelにするとちゃんとその単語は1つのセルに収まり、そのExcelをインポートすると問題無いことは確認済みです。 Libre Office、PowerShellについて調べてみたいと思います。 ありがとうございました。