• 締切済み

VBAの「,」カンマのエスケープの方法

現在、あるプログラム(PHPで作成)からcsv形式でデータを出力しています。 このデータをエクセル2000のVBAで取り込んでいますが、 「,」があるとズレてしまいます。 VBAではどの様に「,」エスケープすればよいのでしょうか? 以上、ご教授よろしくお願いします。

みんなの回答

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

区切りとしてのカンマでなくデータとしてカンマが含まれているということでしょうか? VBA側としての処理は難しいような気がします。 出力側で、何らかの徴をつけてやるとかそういうことが必要なんじゃないかと思います。

noname#59240
質問者

お礼

ご回答ありがとうございます。 出力側で""で囲むでとりあえず解決できました。 但し、別の問題が発生したのでこれは別途質問したいと思います

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

関連するQ&A

  • VBAで「"」[']をエスケープする方法

    PHPで作成したプログラムからCSV形式でデータを出力し MSエクセル2000のVBAで取り込んでいます。 データに「,」があるとデータが分割されてしますため 「""」で囲んだところ上記の問題は解決しました。 しかし、今度は「"」部分でデータが分割される現象が起こっています エスケープ方法、または他の解決方法はありますでしょうか? 例  (1)「あいう,えお」→「あいう」「えお」に分割される  (2)「"あいう,えお"」→「あいうえお」で問題ない  (3)「"あい"う,えお"」→「あい」「う,えお」に分割される  (4)「"あい'う,えお"」→「あい」「う,えお」に分割される  (5)「あいう"えお」→「あいう"えお」で問題ない 「,」が解決すると「'」「"」問題が生じ、逆も又同じで困っています 以上、ご教授よろしくお願いします

  • VBAマクロでCSV出力

    はじめまして、よろしくお願いします。 ExcelのVBAマクロで 特定のセルの範囲を「シート名.csv」で出力するようなプログラムを書きたいです。 例)シート名「TEST」内にあるマクロボタンを押すと  A1:A10のセルの内容が「TEST.csv」(アスキー形式ならなんでも)  に出力される。 どういうやり方があるか、お勧めのサイト等、 ご教授いただけないでしょうか? 以上、よろしくお願いいたします。

  • CSV形式ファイルにある、カンマについて

    こんにちは。 現在、VB2005で、CSV形式のファイルを読むプログラムを 作っているのですが、CSV形式の1フィールドの中に カンマが入っているデータがあります。 フィールドの区切りのカンマではなく、文字としての カンマとして取り扱う場合は、そのカンマはどのように 変換すればいいのでしょうか? エスケープシーケンスという方法があるというところまでは わかったのですが、具体的にどのようにすればいいのかが わかりません。 よろしくお願いいたします。

  • csvをVBAを使ってエクセル形式で保存したい

    タイトルのとおりなのですが、csvをVBAを使ってエクセル形式で保存したいのですが、その際ひとつ条件がありまして作成するエクセルファイルをcsvと同じ名前にしたいと思っています。  csvのファイル名は都度変わってしまうため私の現在の知識ではVBAを作成することができません。  教えて下さい。よろしくお願いします。

  • エクセル2003で作ったVBAが2007で動かない

    現在、エクセル2003で作成したVBAがエクセル2007だと、マクロを有効にして起動させようとするとコンパイルエラーとなって動作しない現象が起きていて困っています。 どなたか、解決方法をご教授頂けないでしょうか? ・VBAを含んだファイルを開いて、マクロを有効にすると ”コンパイルエラー:変数が定義されていません” というエラーボックスが出てきてプログラムの矢印のポイントがPrivate Sub User Form_Initialize() のところを指したまま止まってしまう。 ・このVBAはエクセルの表の書かれたデータをRS-232Cで出力するようなプログラムが使われていて、MSCommというものが使われています。この関連のプログラムが2003と2007では互換がないということはありますでしょうか? どうぞ、よろしくお願い致します。

  • VBA CSV形式で保存したいのですが

    EXCELで、以下のような表を作成してあります。   A       B       C 1 あ,10 2 い,20,100 3 う,30 4 え,40,200,か 5 お,50 A列にカンマを含めたデータが入っており、 1000行程度あります。 このようなデータをCSV形式で保存したいのですが、 単純にVBAを組むとそれぞれのデータが""で囲まれます。 また、上記例の3行目(以降)のデータの終わりに「,」が 出力されてしまいます。 例:   あ,10 い,20,100 う,30, VBAで、 (1) ""で囲まれることなく、 (2) 行内のデータの個数によって,をつける位置を判断させて (3) セルに入っているカンマ区切りのデータをB列等に分離せずに 保存する方法はないでしょうか? ご教授、よろしくお願いします。

  • VBA?C?なにを使えばよいでしょうか

    あるアプリケーションにデータ登録をするときに、現在はコマンドプロントから コマンド(c:\>xxxxx -***** "name" "age" ・・・・)を打って登録しています。 最近急に、データ量が増えて手動で登録するのが困難になってきました。 現在このデータはエクセルで保存してあります。これからも、エクセルで 管理していく予定です。 そこで、エクセルに入力したものをエクセルVBAを使ってセルからデータを 取り出して、1件づつ自動でアプリケーションに登録するコマンドを発行したい と考えています。 それか、エクセルのデータをCSV形式にしてC言語で作ろうかとも思っています。 実現したいことは ・データはエクセルで管理している。 ・毎回手動でコマンドをたたいていたのを、プログラムで実現させたい。 (DOSにコマンドを発行する) ・データの入力はCSVを読むか、エクセルシート上でセルからひっぱって くるか。 VBA、Cともに初心者です。どの言語でどういう風な形で プログラムを作ればよいかわからず困っています。 実現するよい方法をおしえてください。よろしくおねがいします。

  • EXCEL VBAでのCSV出力について

    EXCELに入力されたデータをCSV出力するプログラムを作成しました。データには日付が入っており年月日がYYYY/MM/DDの形で入力されています。これをハンド作業で名前をつけて保存でCSVに出力すると年月日はそのままの状態で保存されますが、VBAで保存するとMM/DD/YYYYの形になってしまいます。この状態で保存されると、次にEXCELで読み出すと年月日が文字列扱いになってしまいます。新しいマクロの記録で行っても結果は同じでした。 VBAで保存する際、YYYY/MM/DDで保存する方法はないでしょうか。 また、MM/DD/YYYYで保存されたCSVを日付としてEXCELに認識させる方法はあるでしょうか。 教えてください。よろしくお願いします。

  • VBA/HTML連携について困っております

    業務の中で、下記のようなスキームのツール作成を取り組んでいます。 エクセルデータの必要な部分を切り出してCSV形式で保存するというVBAまでは 完了したのですが、そこからフォルダ内の全CSVファイルを読み込み(吸い上げ)WEB上に表示するといったことが、どうしてもわかりません(※2番、3番)。 もし詳しい方がいましたら、ご教示お願い致します。 よろしくお願いいたします。 漠然とした質問内容で申し訳ございません。 【作成したい内容】 1.エクセルデータをCSV形式で指定のサーバーフォルダに保存 ←完了 2.サーバーフォルダ内のCSVデータを読み込みWEB上に表示 3.WEBからCSVデータをダウンロード

  • カンマ区切りCSVファイルをVBAで読み込みたい

    こんにちは。EXCELのVBAに詳しい方、どうか教えてください! カンマ区切りCSVファイルをEXCELに読み込みたいのですが、 CSVファイルのデータが金額のため、データ自体にもカンマが含まれていて、 金額のカンマでも分割されてEXCELのセルに収まってしまいます。 データの区切りのカンマと、金額のカンマを区別して読み込む良い方法はないでしょうか。 とても困っているので、お解りになる方どうかご回答をお願いいたします。 ・CSVファイルのデータ   1,000 , 2,000 , 1,500 , 3,000 , 1,000 , 2,500 , 2,000  ↑金額のカンマでデータが分割されないように読み込みたいのですが・・・