• ベストアンサー

エクセルでのCSV書きだし

エクセルで編集したデータをフィールドごとに、ダブルコーテーション("")カンマ(,)で区切ったテキストで書き出ししたいのですがそういうことはできますでしょうか? "00","11","22","33"といった具合です 宜しくお願い致します

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

  • ベストアンサー
  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.2

CSV書き出しでは、数値データがダブルコーテーションで囲まれません。 マクロを使えば思い通りの結果が得られます。

denxx
質問者

お礼

なるほど!!マクロを使うっていうのは文字を置き換えればいいわけですね?,を","に置き換えみたいにすれば解決できます。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

回答No.5

エクセルで編集したデータを秀丸エディタにコピーして、 秀丸エディタで正規表現の置換を2回実行すればできます。 ■ 1回目 検索:「[^\t\n]+」 置換:「"\0"」 ■ 2回目 検索:「\t」 置換:「,」

denxx
質問者

お礼

ありがとうございます。 助かりました

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.4

お示しの例の場合は、出来ません。 ただし、データが 1,234 や A,B のようなカンマを含むものであれば、"1,234" や "A,B" のように作成されますけど。

全文を見る
すると、全ての回答が全文表示されます。
  • puni2
  • ベストアンサー率57% (1002/1731)
回答No.3

ごめんなさい,ダブルコーテーションというところを見落としていました。 No.1の回答は無視してください。

全文を見る
すると、全ての回答が全文表示されます。
  • puni2
  • ベストアンサー率57% (1002/1731)
回答No.1

「ファイル」→「名前を付けて保存」で,「ファイルの種類」欄を開いて「CSV(カンマ区切り)」を選べばできると思いますが,いかがでしょうか。 「複数のシートを含むブックをサポートしていません」とか,「CSVと互換性のない機能が含まれている可能性があります」とか,あれこれメッセージを出してきますが,元のファイルを(エクセル形式で)きちんと保存したあとであれば,無視してかまいません。 「フィールドごとに書き出す」というのが,もしエクセルのデータを1列ずつ分けて,それぞれをCSVファイルにしたいというのであれば,1列ごとに1枚のシートにして,それぞれのシートに対して前述の作業を行なえばできます。 (もっとスマートな方法もありそうですが)

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ExcelでのCSV書き出しについて

    Excelで書き出したCSVデータをJavaScriptで読み込ませてHTMLで表示させようと考えております。その際に、Excel側でどうにかしたい問題点が2点あり、今回質問させていただきます。 問題点としては ・CSVの中身が日本語を含む場合、文字コードがUTF-8でないとHTMLで文字化けしてしまう。 ・CSVを秀丸などのテキストエディタの中で表示させると前後に「"」が入ってしまう。 上記の2点の問題をクリアしたいと考えております。 解決させるべき問題としては ・UTF-8でCSVを書き出すこと ・前後の「"(ダブルクォーテーション)」を外すこと ・カンマ区切りのCSVであること 他のテキストエディタと一緒に使えば良いのですが、Excelで一元化したいので、どなたか、方法または参考になるサイトがあれば教えて下さい。方法はマクロでもVBAでもどちらでも結構です。 よろしくお願いいたします。

  • ExcelのVBAでCSVを読み込むと通貨になる

    Excel2010のVBAでCSVファイルを読み込んで処理させたいのですが、読み込んだデータをExcelが勝手に別のデータに変えてしまうので困っています。 例えば、123,456というデータは、フィールドにカンマがあるので、CSVでは"123,456"となりますが、これを以下のようなVBAのコードで読み込ませると、書式が通貨として扱われてしまって、データも123456になってしまいます。文字列として読み込まれていれば正しいデータとして読み込まれるように思うのですが、文字列として読み込ませる方法が分かりません。正しく元のデータ123,456のまま読み込ませるにはどうすればいいのでしょうか。 なお、CSVの各フィールドにカンマやダブルクォーテーションが混在していると、各フィールドに分割する処理が複雑でよく分からないので、下記のコードのようにExcelの機能でCSVを各フィールドに分割される方法で読み込ませたいです。 よろしくお願いします。 Workbooks.Open Filename:= "file.csv"

  • ExcelのCSV形式について

    ExcelデータをCSV形式で保存するとき文字列はダブルコーテーション、数字列はそのままでカンマ区切りしたいです。確か123のCSV形式はそうなってたと思います。お手数ですが御回答、宜しくお願い致します。

  • EXCEL VBAでのCSVファイルの編集

    CSVファイル(ダブルクォーテーション)形式のファイルをEXCEL VBAにて行の編集(削除)をした後、上書き保存をしたらダブルクォーテーション区切りではなくカンマ区切りのCSVファイルの形式になってしまいます。 ダブルクォーテーション区切りのCSVファイルで上書き保存する記述があれば教えて下さい。おそらくEXCELでCSV形式の上書きはCSV2の形式で保存されるみたいです。 困っています。どなたかお助け下さい。

  • Excel VBAにてCSVファイルを読みたい

    ExcelにてCSVファイルを読んで処理をしたい。 ただし、CSVファイルをExcelでopenすると遅いので、 VBAにてファイルとして読み込みで処理をしたいのですが、 皆さんは、どのように行っていますか? ※CSVファイルは、テキスト区切り→"(ダブルコーテーション)です  テキスト区切り無しであれば、1行読んで、カンマをsplitすれば良いと思いますが。。。。

  • csv形式について

    Access2000を使用しています。 データをCSV形式で吐き出したいのですが、その際、フィールドにデータが存在すれば、ダブルクォーテーションをつけ、空欄だった場合はダブルクォーテーションをつけないようにしたいと思っています。 実際にやってみると、空欄のフィールドに対してダブルクォーテーションがつくものと、つかないものとがあります。この違いはどこからきているのでしょうか? ご存知でしたら教えてください。よろしくお願いします。

  • ExcelでのCSVファイルの読み込み

    CSVを直接ダブルクリックしてExcelを開くと、住所の番地のみ入っているセルが、日付に自動変換されてしまいます。テキストファイルにリネームしてファイルを開きテキストファイルウィザードで変換すればよいのですが、エンドユーザーが使用するので、ダブルクリック一発で開かせたいです。何か良い方法はありませんか? ちなみにCSVはフィールド毎にダブルクォーテーションで囲っています。

  • エクセル2010 CSVレイアウト崩れ

    「よくある質問」とはちょっと違うと思います。 あるCSVファイルを、そのままダブルクリックするとエクセルで開いてくれるPCがあります。 そのようにして開くとレイアウト崩れはありません。 で、同じCSVファイルをエクセルの「データ」→「外部データの取り込み」→「テキストファイル」で読み込むと、レイアウトが崩れてしまうのはなぜでしょうか。 なぜこのような質問をするのかというと、ちょっと説明が難しいのですが、なるべく簡潔に箇条書きにしてみます。 1 まず、このCSVファイルは自社で使っているオリジナルのシステムがCSV形式で吐き出すファイルであるという事実 2 このファイルは、ところどころ長文があり、セル内で改行が必要。なので長文の部分はダブルクォーテーションで改行を含め全体を囲んである。 3 従来はCSVファイルをそのままダブルクリックして開いて、内容をチェックする時、担当者がエクセル上でセル幅や高さをマウスで調節して文章を読んでいた。なお、その際にレイアウト崩れは発生したことがないので、もともとのファイルのCSV形式はちゃんと整って吐き出されているものと思われる。 4 しかし、いちいち手動でそんなことをするのは大変だろうと、私がマクロでCSVファイルを読み取り、自動的にセル内の文章を全部表示できるサイズに各行や列を自動調節できるようにしたいと考えた。 5 具体的には、まずマクロを記録したエクセルファイルを開き、そこから次のシートに当該のCSVファイルを読み取らせればよかろうと考えた。 6 ところが、シートにCSVファイルを読み込ませるために冒頭のような読み込み作業を行ったら、同じエクセルの同じバージョン、同じPCなのにも関わらず、レイアウトに崩れが生じた。 7 具体的にどの部分でレイアウト崩れが起きているのかをテキストエディターで調べると、やはり長文内の改行部分で次のセルに移動してしまっている。 8 しかし、改行部はダブルクォーテーション内に収まっており、(そうでなかったらCSVファイルを直接ダブルクリックしてエクセルを開いた際にもレイアウト崩れが生じていたはず)自分でも訳がわからなくなる。 9 つまり、CSVファイルをテキストデータとして読み込んだ際、設定で「カンマでセル移動、ダブルクォーテーションを「文字列の引用符」に指定しているにも関わらず、エクセルがダブルクォーテーションを無視しているとしか考えられない 10 なぜこのような違いが同じエクセルで生じるのかがわからない 11 いろいろ調べると、「ひょっとして改行コードの解釈の問題(例のLF+CRの問題)か?もしくはダブルクォーテーションのコードの解釈の違いがあるのか??」と思い当たる。 …と、以上のような経緯があったわけです。 それにしても不可解な話なので、どなたかエクセルに詳しい方の解説がいただけたらなあ…と思うのですが、いかがでしょうか。 もしくはどこかに、「一発でCSVファイルを正しく読み込んでくれるモジュールがあるよ」的なアドバイスをいただけると非常に助かります。 よろしくお願いいたします。長文失礼いたしました。

  • Access2000でのCSV出力(エクスポート)

    お世話になります。 Access2000を利用して、あるテーブルデータをCSVファイルとしてエクスポートしようとしています。 そのときに、すべての要素を「"」(ダブルコーテーション)で囲み(「,」カンマで区切り)たいのですが、 データ型が文字型のときは設定で上手く囲めるものの、数値型では値がそのまま出力されてしまいます。 数値型のフィールドもダブルコーテーションで囲む方法はありませんでしょうか? よろしくお願いいたします。 例)"ああああ","A10000",100         ↓   "ああああ","A10000","100" ← ここ

  • CSVの編集について

    500件程あるCSVデータの編集をしようとしています。 (1)0,0,1, ,800,0, ,1, (2)20000, ,1, ,,0, ,1, というようなデータを、 (1)0,"0","1"," ",800,0," ","1", (2)20000," ","1"," ",,0," ","1", というように文字列をダブルクォーテーションで囲み 数値は囲まずにそのままにするという編集をしたいのですが、 500件のデータを手直しするのは時間がかかりすぎて困っています。 テキストエディタでの編集も考えましたが、 項目長がずれてしまっているのでキーマクロが使えず 八方ふさがりになり気味です。 何か良い案をお持ちの方教えてください!! できれば10月18日中に編集を終えたいと思っています。 よろしくお願い致します。

専門家に質問してみよう