dポイントプレゼントキャンペーン実施中!

はじめまして、よろしくお願いします。

ExcelのVBAマクロで
特定のセルの範囲を「シート名.csv」で出力するようなプログラムを書きたいです。
例)シート名「TEST」内にあるマクロボタンを押すと
 A1:A10のセルの内容が「TEST.csv」(アスキー形式ならなんでも)
 に出力される。

どういうやり方があるか、お勧めのサイト等、
ご教授いただけないでしょうか?

以上、よろしくお願いいたします。

A 回答 (2件)

こんなところでどうでしょう。


 

参考URL:http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub0 …
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
かなり参考になります。

お礼日時:2007/11/02 10:49

コード数はこんなに少なくてできます。


Sub test01()
d = 10
Open "C:\Documents and Settings\OTO\My Documents\testcsv.csv" For Output As #1
For i = 1 To d
Write #1, Cells(i, "A"), Cells(i, "B"), Val(Cells(i, "C"))
Next i
Close #1
End Sub
--
例データ
aaabbbss1
aad2
ddf3
ffg4
ghhh5
jjkjj6
sdk1
ssa2
結果
"aaabbb","ss",1
"aa","d",2
"dd","f",3
"ff","g",4
"gh","hh",5
"jjk","jj",6
"sd","k",1
"ss","a",2
メモ帳で確認できます。
===
注意
d = 8
は8行をプログラムにセットしてますが
「あるだけ」の行数なら
d=Range("A65536").End(xlUp).Rpw
--
Val(Cells(i, "C"))は数字列の項目はこうすると1,のように
””が付かず、Valを除くと””が付く。
CSVファイルにはどちらの方式もあると思う。
列数が多いと、Print #というのでもできるが、1行分の文字列としての編集が必要。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
参考にさせていただきます。

お礼日時:2007/11/02 10:50

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