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

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

CSVをExcelに変換したい

お世話になります。 CSVファイルをExcelファイルに変換する場合、CSVファイルをExcelで開いて拡張子を「xls」もしくは「xlsx」を指定して保存すればよいかと思いますが、PCにExcelがインストールされてない環境の場合、Excelに変換することは不可能でしょうか。 今回、Accessにてツールを作成し、CSV(カンマ区切り)のデータを読み込もうとしておりますが、そのデータの中には単語の中にカンマが含まれているものがある為、普通にCSVをインポートしようとすると、ズレてしまいます。 なので、インポートする前準備としていったんExcelに変換したいと考えているのですが。。そのPCにExcelがインストールされてないと、やはり変換することは出来ないでしょうか。 もしくは、カンマ区切りのCSVファイルをタブ区切りに変換したりすることは出来ますでしょうか。 ご教授の程、宜しくお願い致します。

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

  • ベストアンサー
回答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% (6637/9404)
回答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% (1876/4424)
回答No.1

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

naoto0216
質問者

お礼

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

関連するQ&A

  • CSV→タブ区切り

    CSVファイルでデータを取り込もうとしてますが、金額にカンマが入ってたりして、列がずれたりします。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=361247 ↑等を参照した上ですが、タブ区切りデータでインポートしてみようかと思います。 CSVファイルをタブ区切りファイルに変換するにはどうしたらよいでしょうか?そういうコードはありますでしょうか?

  • ExcelでのCSVファイルの編集について、

    ExcelでのCSVファイルの編集について、 オートフィルタ機能を使いたいため、 ExcelでCSVファイルの編集しようとしているのですが、ちょっと苦戦しています。。。 私が試してみたこと 1.もとのCSVファイルの拡張子を○○.csv → ○○.txtに変更。   ↓ 2.Excelの「開く」からその○○.txtを読み込む。   ↓ 3.テキストファイルウィザードに従い、   1「カンマやタブなどの区切り文字によって~ 」にチェック   2「区切り文字」→ カンマ、「文字列の引用符」 → "   3「列のデータ形式」 → 文字列 ※090などの数字を、90と先頭の0を消されないように 上記のような手順でCSVファイルを取り込み、編集を終え、 保存する時は   「○○.txtにはテキスト(タブ区切り)と互換性のない機能が含まれている可能性があります。    この形式でブックを保存しますか?」 → このまま保存するため「はい」を選択 これでバッチリOK!…かと思われたのですが、 元の編集前の○○.txt は"名前","ヨミ","電話番号1", …… ""とカンマ区切りであったのが、 編集後の○○.txtは名前 ヨミ 電話番号1  …… タブ区切り(?) となってしまっています。 (CSVファイルとしてはタブ区切りでも問題ないのでしょうが…) どうすれば元のカンマ区切りの形式のまま保存できますでしょうか。 アドバイスよろしくお願い致します。

  • EXCELで保存しているファイルをCSV(カンマ区切り)にしたい

    EXCELで作成されたファイル(1)(拡張子:xls)をCSV(カンマ区切り)のファイル(2)(拡張子:csv)にしたいのですが、方法として、(1)をEXCELで開き、CSV(カンマ区切り)で保存し、(2)を作成する方法しかないのでしょうか? 例えば、DOSのコピーコマンドなどで変更する方法や、エクスプローラー上で拡張子を変更する方法などなど。 できれば、画面を開いたり、閉じたりしたくない(自動で変換させたい) 宜しくお願い致します。

  • CSVファイルをEXCELに変換の自動化作業

    CSVファイルをEXCELに変換の自動化作業 {CSVファイルをEXCELに変換するため、 excel  ツールバーよりデータ(D)→外部データの取り込み(D)→テキストファイルのインポート→ファイルの種類変更→全てのファイル→○○.csvのファイル指定→“,”の区切り選択、、ウィザードに従って変更し次へで進む→A1が指定されるのでそのまま完了→CSVがEXCELファイルに変換された。 参照したabc1.csvの名前に対して新しいabc1.xlsとなずけて登録する。これらの作業をMYドキュメントのhenkan ホルダーに入っているCSVファイルに同様に作業して同じくhenkan ホルダーに入れる。} 上記の{ }内の作業を何か,excelのVBAのマクロのようなもので実行することはできませんか。 やり方を教えてください。

  • Excel ワークシート から csvファイルに変換するには?

    エクセルに記入された内容は各マスで区切られておりますが マスではなく「,」で区切られる csvに変換したいのですが これは可能でしょうか? 既に入力済みのエクセルシートから ファイル→名前を付けて保存→ファイルの種類→csv→保存 というようにしてエクセルからcsvに変換しようとしましたが 「選択したファイルの種類は複数のシートを含むブックをサポートしていません」 というエラーが出て、そこでOKを押すと 「CSV(カンマ区切り)と互換性のない機能が含まれている可能性があります、この形式でブックを保存しますか?」 と出てきますのでここで「はい」をおすと ファイルの拡張子自体はcsvになるのですが カンマでの区切りではなく未だにエクセルのラインが残っております どうすればエクセルで区切られたマスをカンマに置き換える事ができるのでしょうか? 変換しようとした際に出てくるエラーに問題があるのでしょうか? そうだとしてもエラーの意味がわかりません… 教えてください よろしくお願いします

  • vbs xlsをcsvに変換

    vbsでxlsファイルをcsvファイルに変換することは可能でしょうか。 手動で拡張子をcsvにすると、カンマ区切りではないため 一列目にすべての値がスペース区切りで出力されてしまいます。 vbsで実行可能でしたらコードのご教示頂けますでしょうか。

  • CSVでタブ区切り

    はじめまして。エクセル2003を使用中です。 データのやり取りをする際に 「エクセルのデータをCSVでタブ区切り」に変換して送って欲しい と言われました。 保存時に 「名前を付けて保存」→「ファイルの種類」で「CSV」を選択すると「カンマ(,)」で区切られますよね? これを簡単にタブ区切りにしたいのですが・・そんな方法はありますでしょうか? 現在、試作の段階では一旦TXT形式で保存し、ファイル名を直接「CSV」に変更しています。 実は常時この作業を行う者が私よりPCに詳しくない為、この手順だと不安だと言います。 出来る限りわかりやすく作業を行いたいのです。 不明点があれば補足させていただきますので アドバイス等ございましたらどうぞよろしくお願いします。

  • CSVデータをエクセルのセルに入れたい・・・

    よろしくお願いします。 CSVデータを当方ではエクセルで開いてます。 カンマ区切りごとのデータがエクセルのセルに1つずつ入力されてるので 不用データを行や列ごと削除できるので便利に使っていました。 が、他のPCでデータを同じように加工しようとしたところ、最初のセルに全て連続して入っているという状態で、上記のような作業が出来ませんでした。 5台のPCともXPでエクセル2003です。 テキスト形式・タブ区切り・カンマ区切りなどなど専門的なことが良く判っていないため、説明もうまくできませんが、PCの設定なのか?セルに1つづつ分ける方法があるのか?何でわたしのだけ? ?? 引継ぎが出来ず困っておりますのでどなたかお願いします。教えてください!!

  • xls→csv→txtで住所が数値で読み込まれる

    ファイルメーカーのに入っている住所録のデータを 弥生顧客にインポートする際に ファイルメーカーのデータをxlsにエクスポート それとcsvファイルに保存 カンマ区切りのテキストファイル にして弥生顧客にインポートするのですが もとデータの住所を関数で町名までと番地以下に分けているのですが xls→csvに変換する際に 住所の番地以下が数値として読み込まれ 勝手に日付になってしまうところがあります。 (しかも、その日付も西暦だったり英文だったりばらばら) 外部ファイルとして読み込んだりしてみたのですが上手くいきません。 何か解決策があれば教えてください。 どうぞよろしくお願いいたします。 ファイルメーカーのバージョンは5.5 エクセルは2003 弥生顧客は8.0です。 OSはWinXpです。

  • ExcelファイルをCSV 形式で保存するには?

    ExcelファイルをCSV 形式 (Windows、カンマ区切り) (*.csv)にして書類を提出するように言われたのですが、その方法について教えてください。 データの内容は会社の詳細で、1社につき100項目のデータがあり、それが50社あります。その場合、1社目のデータをA列に、2社目のデータをB列にというように入力すればよいのでしょうか? Excel の [名前を付けて保存] ([ファイル] メニュー) を使って、CSV (カンマ区切り) (*.csv)ファイルで保存すると、各項目がカンマで区切られるのでしょうか? 1レコード目と2レコード目はどういった区切りになるのでしょうか? またファイル形式はCSV 形式でと言うことですが、提出するファイル名の拡張子を.txtとしないといけないのですが、それはどうすればいいのでしょうか?

専門家に質問してみよう