• ベストアンサー

エクセルのCSV保存

CSVの "あああ","いいい","ううう","えええ" というデータをExcelで呼び出してCSVで再保存をかけると あああ,いいい,ううう,えええ という様にダブルフォーテーションが消えてしまうのですが、元の形式で再保存するためにはどうしたらよいのでしょうか?

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

  • ベストアンサー
  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.1

普通にやったらできません。 でも、項目にカンマが含まれていると「"」で囲ってくれますので、この特性を利用できると思います。 保存する前に、新しいワークシート(Sheet1)を作成して、Sheet1のA1に、「=元のシート名!A1 & "@,@"」と式をいれ、縦横にコピーします。 保存するときはこのSheet1を選んでから「名前を付けて保存」で、元のファイル名とは別名(例:変更後.CSV)でCSV形式で保存します。 変更後.CSVをテキストエディタで開き、「@,@」を空欄に置換します。 ・・・と、こんな方法しか思い浮かびませんが。 頑張ってくださいヽ(^。^)ノ

souta_n
質問者

お礼

Excelのデフォルトの機能にはありませんか 変更があったらワードパッドで開いてやるようにします。 ありがとうございました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

VBAで 標準モジュールに貼りつけて実行。 ファイル」名は変える。 Sub test01() Open "c:\My documents\aaa18.csv" For Input As #1 Open "c:\My documents\aaa19.csv" For Output As #2 While Not EOF(1) Line Input #1, a b = Split(a, ",") s = "" For i = 0 To UBound(b) If IsNumeric(b(i)) Then s = s & b(i) & "," Else s = s & """" & b(i) & """" & "," End If Next i s = Left(s, Len(s) - 1) Print #2, s Wend Close #1 Close #2 End Sub 原データ 12,ass,dfg,34 23,wer,s,346 結果 12,"ass","dfg",34 23,"wer","s",346 結構面倒だと言うのが感想。

souta_n
質問者

お礼

ありがとうございます。 >結構面倒だと言うのが感想。 あはは・・・そうですねコーディングは理解できるんですけど今VBAモードじゃなくて頭がPerlモードなんで(PerlでCSVファイルの読み書きのプログラミング中DataをExcelでいじろうと思ったら、この問題にぶちあったたもので質問しました) 又なんぞの時に役に立ちそうなコードです。 とりあえずワードパッドで開きます。

関連するQ&A

  • ExcelのCSV形式で保存する必要性について

    テキストデータをExcelでカンマ区切りで開いてExcelのCSV形式で保存すると、見た目はエクセルとなんらかわらず、集計等できるものの、書式等が保持されない状態で保存されるものと理解しています。 それであれば、なにもCSVでなくExcelブック形式で保存した方が良いように思いますが、敢えてExcelのCSV形式で保存する理由、あるいは必要性について教えてください。

  • エクセルのcsv保存で。。

    前と同じような質問ですみません。。。 エクセルのSheet5をcsv形式で保存する際、 名前を付けて保存のダイアログを表示させて、 ファイルの名前を常に「bonaplus.csv」と 既定値で表示させておくようなマクロは できないでしょうか? ※bonaplusの後には作成日付を入力します。 ※csvファイルを作成した後に元のエクセルファイルの  保存になります。

  • エクセルでCSV形式で保存したいができない

    エクセル2002で、保存するときに csv形式と選ぶのですが CSVとは互換性のない機能が含まれている というようなメッセージがでてしまいます 中のデータは単なる住所録で特段凄い内容ではありません。どうすればうまく行きますか?

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

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

  • Excelのcsv保存について

    別ブックのデータを参照して、csvで保存するためのブックを作ったのですが、参照のための関数が入力されているセルもcsvにnullで出力されてしまいます。 参照元.xls  A B C D E 1 あ い う え お 2 か き く け こ 3 さ し す せ そ 4 5 csv出力用.xls A1~E5には作業の都合上、 =IF([参照元.xls]Sheet1!A1="","",[参照元.xls]Sheet1!A1) のような関数を入れて参照しています。  A B C D E 1 あ い う え お 2 か き く け こ 3 さ し す せ そ 4 5 これをcsvで保存すると、 あ,い,う,え,お か,き,く,け,こ さ,し,す,せ,そ ,,,, ,,,, と、データは未入力だけど関数が入っている部分まで保存されてしまいます。 これを、 あ,い,う,え,お か,き,く,け,こ さ,し,す,せ,そ ここまでで保存できるような方法、 もしくは関数などはありませんでしょうか。 csv出力用のブックでは一括半角置換や全角置換、 誤入力されたハイフンやスペースの削除などをおこなっているので、 できればこの参照形式は崩したくありません。 わかるかたいらっしゃいましたらアドバイスをお願いします。

  • エクセルの保存方法

    エクセルのデーターを「CSV」形式で保存したいのですが?CSV形式というのがわかりません。だれか教えていただけますか?

  • excelでCSV形式

    Excelで作成した表にCSV形式で保存したファイルを読み込んでExcelの表を完成させたいです。 CSV形式のファイルが3万件ぐらいのデータなので、コピーして貼り付けることが難しい状態です。 よろしくお願いします。

  • 保存したcsvがエクセルになってしまう

    PC疎いので小学生にでも解るようにご説明いただけると幸いです。 きのう、事情があってリカバリしました。 するとリムーバルディスクに保存しておいた(メモ帳?で保存)csvがすべてExcelになってしまいました。 csvで抽出するときもExcelになってしまいます。 元に戻すにはどうしたらいいのでしょうか? ちなみにDドライブから復元した物もExcelに変わっています。 Windows7です。 どうぞよろしくお願いいたします。

  • CSV形式ファイルは編集データは保存されない?

    ダウンロードしたCSVファイルを編集し、初めて保存するときに以下のようなメッセージが出ます、 「(ファイル名)には、CSV(カンマ区切り)と互換性のない機能が含まれている可能性があります。この形式でブックを保存しますか? ・このまま保存するには、[はい]をクリックします。 ・機能を保存するには、[いいえ]をクリックしてから、最新のExcelファイル形式で保存します。 ・失われる可能性がある内容については、[ヘルプ]をクリックしてください。」 「はい」を選択するとCSV形式で保存されるようですが、編集したデータではなく編集前のデータのままで保存されています。 なので「いいえ」を選択すると今度は編集されたデータでExcel形式で保存されます。 つまりCSV形式で編集したものは元データのまま、かつ、同形式でしか保存されないということなのでしょうか?編集したデータを保ちたい場合にはExcel形式でしか保存するしかないのでしょうか?

  • エクセルでCSV形式で保存するマクロを作成したい。

    sheet1,sheet2,sheet3とあります。 そのうちsheet3だけを毎回「data.csv」のcsv形式で保存して画面を閉じ、 元のWorkbookは上書き保存しつつ画面は閉じないようなマクロを作成したいのですが。 よろしくお願いします。

専門家に質問してみよう