- ベストアンサー
エクセルのカンマ区切りのCSV出力
エクセルのカンマ区切りのCSV出力について質問します。 CSVファイルとしてカンマ区切りで出力したいのですが、さらに各項目にダブルコーテーション(")をつけて出力したいのです。 例) 通常のCSV 01,02,03 やりたいCSV出力 "01","02","03" ご存知の方がいらっしゃいましたら回答お願いします。
- allen376ersfan
- お礼率75% (15/20)
- オフィス系ソフト
- 回答数2
- ありがとう数2
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
参考URLをご覧になってみてはいかがでしょうか?
その他の回答 (1)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 簡単なマクロを作ってみました。ただし、これは、出力のみであって、CSVそのものを、そのままインポートすると、「"01","02","03"」は、「1,2,3」に戻ってしまいます。 以下の SWITCH の部分のパラメータによって、「""」の囲み方が変わります。 以下のマクロは、標準モジュールに取り付けると良いと思います。 標準モジュールへの取り付け方 Alt + F11 (Altを押しながらF11)を押すと、Visual Basic Editor 画面が出てきます。 次に、メニューの[挿入]-[標準モジュール]と開けて、クリックすると、画面が現れますので、以下のコードを貼り付けて、 Alt + Q で、画面を閉じます。 '---------------------------------------------------------------- Sub OutputCSV() 'CSV["" (クォーテーションマーク)]付き出力 Dim myFname As Variant Dim Fno As Integer Dim buf As String Dim i As Long Dim j As Long Const QT As String = """" '「""」を入れるかどうか '0 =すべて, 1 =書式文字列のみ, 2 =すべてない Const SWITCH As Integer = 0 '註:数値でも、'02 や書式文字列にしていれば、文字列として認識する myFname = Application.GetSaveAsFilename("", "テキスト ファイル (*.csv), *.csv") If myFname = False Then Exit Sub ElseIf Dir(myFname) <> "" Then If MsgBox("同じ名前のファイルがあります。上書きしますか?", vbQuestion) = vbCancel Then Exit Sub End If End If With ActiveSheet.UsedRange If WorksheetFunction.Count(.Cells) = 0 Then MsgBox "データが一つもありません。", vbCritical Exit Sub End If Fno = FreeFile Open myFname For Output As #Fno For i = 1 To .Rows.Count For j = 1 To .Columns.Count If Not IsEmpty(.Cells(i, 1).Value) Then If SWITCH = 0 Then buf = buf & "," & QT & .Cells(i, j).Text & QT ElseIf SWITCH = 1 Then If VarType(Cells(i, j).Value) = vbString Then buf = buf & "," & QT & .Cells(i, j).Text & QT Else buf = buf & "," & .Cells(i, j).Text End If Else buf = buf & "," & .Cells(i, j).Text End If End If Next j Print #Fno, Mid$(buf, 2) buf = "" Next i End With Close #Fno End Sub '----------------------------------------------------------------
お礼
マクロですね。私も考えました。ありがとうございます。 エクセルの機能であるかと思い、質問させていただきました。 回答ありがとうございます。
関連するQ&A
- ダブルクォーテーションカンマ区切りのcsv形式ファイルへの変換方法
Excelファイルをダブルクォーテーションカンマ区切りのcsv形式ファイルへ変換する方法を教えてください。 "●●","○"○,"◆◆"
- ベストアンサー
- オフィス系ソフト
- EXCEL VBAでのCSVファイルの編集
CSVファイル(ダブルクォーテーション)形式のファイルをEXCEL VBAにて行の編集(削除)をした後、上書き保存をしたらダブルクォーテーション区切りではなくカンマ区切りのCSVファイルの形式になってしまいます。 ダブルクォーテーション区切りのCSVファイルで上書き保存する記述があれば教えて下さい。おそらくEXCELでCSV形式の上書きはCSV2の形式で保存されるみたいです。 困っています。どなたかお助け下さい。
- 締切済み
- オフィス系ソフト
- カンマ区切りCSVファイルをVBAで読み込みたい
こんにちは。EXCELのVBAに詳しい方、どうか教えてください! カンマ区切りCSVファイルをEXCELに読み込みたいのですが、 CSVファイルのデータが金額のため、データ自体にもカンマが含まれていて、 金額のカンマでも分割されてEXCELのセルに収まってしまいます。 データの区切りのカンマと、金額のカンマを区別して読み込む良い方法はないでしょうか。 とても困っているので、お解りになる方どうかご回答をお願いいたします。 ・CSVファイルのデータ 1,000 , 2,000 , 1,500 , 3,000 , 1,000 , 2,500 , 2,000 ↑金額のカンマでデータが分割されないように読み込みたいのですが・・・
- 締切済み
- その他MS Office製品
- カンマ区切りのCSVファイルから""を削除したい
初めて質問いたします 以下のような形式のCSVファイルがあります 例) 品名,数量,単価,金額 "りんご",1,150,150 "バナナ",10,200,2000 "メロン","1,000","2,000","2,000,000" 上記のように、品名にはダブルクォーテションがつき、 数量、単価、金額については桁区切りのカンマが発生する場合、ダブルクォーテーションで囲まれています 上記のようなデータを りんご,1,150,150 バナナ,10,200,2000 メロン,1000,2000,2000000 のように別ファイルへ出力するにはどのようにすればよいでしょうか? プログラムでの処理で、WSHを使ったものを教えていただけますと、幸いです よろしくお願いいたします
- ベストアンサー
- その他(プログラミング・開発)
- Excel VBAにてCSVファイルを読みたい
ExcelにてCSVファイルを読んで処理をしたい。 ただし、CSVファイルをExcelでopenすると遅いので、 VBAにてファイルとして読み込みで処理をしたいのですが、 皆さんは、どのように行っていますか? ※CSVファイルは、テキスト区切り→"(ダブルコーテーション)です テキスト区切り無しであれば、1行読んで、カンマをsplitすれば良いと思いますが。。。。
- ベストアンサー
- その他MS Office製品
- Access2000でのCSV出力(エクスポート)
お世話になります。 Access2000を利用して、あるテーブルデータをCSVファイルとしてエクスポートしようとしています。 そのときに、すべての要素を「"」(ダブルコーテーション)で囲み(「,」カンマで区切り)たいのですが、 データ型が文字型のときは設定で上手く囲めるものの、数値型では値がそのまま出力されてしまいます。 数値型のフィールドもダブルコーテーションで囲む方法はありませんでしょうか? よろしくお願いいたします。 例)"ああああ","A10000",100 ↓ "ああああ","A10000","100" ← ここ
- ベストアンサー
- オフィス系ソフト
- ExcelのCSV形式について
ExcelデータをCSV形式で保存するとき文字列はダブルコーテーション、数字列はそのままでカンマ区切りしたいです。確か123のCSV形式はそうなってたと思います。お手数ですが御回答、宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- EXCELで保存しているファイルをCSV(カンマ区切り)にしたい
EXCELで作成されたファイル(1)(拡張子:xls)をCSV(カンマ区切り)のファイル(2)(拡張子:csv)にしたいのですが、方法として、(1)をEXCELで開き、CSV(カンマ区切り)で保存し、(2)を作成する方法しかないのでしょうか? 例えば、DOSのコピーコマンドなどで変更する方法や、エクスプローラー上で拡張子を変更する方法などなど。 できれば、画面を開いたり、閉じたりしたくない(自動で変換させたい) 宜しくお願い致します。
- 締切済み
- オフィス系ソフト
- カンマ区切りでないテキストをcsvへ
カンマ区切りしていないテキストファイルを一気にカンマ区切りしてcsvに変更することはできないのでしょうか?? 元のテキストファイルをワードパッドで開いてカンマ区切りし直して保存し、名前の変更でcsvに変更(拡張子が変更するとファイルが使用できなくなる可能性あり、というエラーは無視)したら読み込めるようにはなります。 しかしカンマ区切りし直すというのは面倒です。
- ベストアンサー
- その他(Windows)
- カンマ区切りのcsvファイルを…
カンマ区切りのcsvファイルをExcelで別々のセルに読み込むVBAのプログラムを作りたいんですが、なかなか調べても見つかりません。 プログラムもしくは参考になるサイト等あればお願いします。
- 締切済み
- オフィス系ソフト
お礼
参考になりました。ありがとうございます。