電子書籍の厳選無料作品が豊富!

今使用しているExcelのフォーマットでは、出力用のシートにボタンを設置して、
クリックするとデスクトップにCSV保存するようにしていますが、
納品先から「ダブルクォーテーションで囲まれたCSV」で納品するよう頼まれました。

以前やった事があるのは、
秀丸等のテキストエディタでCSVファイルを開き、
・「,」を「","」に置換
・正規表現で「改行」を「改行+"」
に置換した後、先頭に「"」を入れる手順で、
各項目がダブルクォーテーションで囲まれたCSVファイルを作成していました。

しかし今回のデータの中にはフリーテキストの項目があり「,(カンマ)」が入っています。
するとそれも置換されてしまうのでアウトです。

ExcelからCSV保存する際、各項目をダブルクォーテーションで囲んでCSVで書き出すにはどうしたら良いでしょうか?

  • 画像を添付する (ファイルサイズ:10MB以内、ファイル形式:JPG/GIF/PNG)
  • 今の自分の気分スタンプを選ぼう!
あと4000文字

A 回答 (2件)

このブログの方法が参考になるのでは?



https://blog.e2info.co.jp/2021/02/16/%E3%83%86%E …
    • good
    • 0

こんばんは。



>ボタンを設置して、クリックするとデスクトップに
>CSV保存するようにしていますが
具体的にどのようにしているのかわかりませんが、CSV作成のマクロを登録してあるってことでしょうか?

もしそうであるなら、そのマクロの処理方法を変えればよさそうに思います。
対象範囲の各セルについて、
 ・「"」は「""」に置き換え
 ・先頭、末尾に「"」を追加
するようにして、シークエンシャルファイルに順次出力してゆけば良いでしょう。

検索すれば、例はいろいろ見つかると思います。
以下一例です。
https://qiita.com/yuk007/items/c44df26ec516f804b …
    • good
    • 0
この回答へのお礼

ありがとうございます!
リンク先はゆっくり明日拝見させて頂きます。

今の仕様はCSVではなくxlsxで書き出すようになってました。
明日にならないとソースを確認出来ないのですが、
書き出し拡張子がxlsxに指定されていましたがそこを変えるだけじゃないので、
簡単にCSVに変更できるものなのかが疑問です。

お礼日時:2024/07/09 23:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!