プロが教えるわが家の防犯対策術!

CSV形式で編集された(7項目,300行)をEXCELファイルへ編集し、印刷する方法を教えて下さい。簡単なサンプルがあれば助かります。
CSV形式のテキストは、以下のような内容です。
Dim Filenum As Integer
Dim i As Integer
Dim Datatable(7, 300) As Integer
Dim Maxrec As Integer
Const datafile As String = "c:\編集データ.txt"
Maxrec = 300
MsgBox "[" & datafile & "] で保存します。"
Filenum = FreeFile
Open datafile For Output As #Filenum
For i = 1 To Maxrec
Datatable(1, i) = i
Datatable(2, i) = 100 + i
Datatable(3, i) = 10 + i
Write #Filenum, Datatable(1, i), _
Val(Datatable(2, i)), _
Datatable(3, i), _
Val(Datatable(4, i)), _
Val(Datatable(5, i)), _
Val(Datatable(6, i)), _
Val(Datatable(7, i))
Next i

A 回答 (3件)

何をなさりたいのかいまいちわかりません。


CSVファイルをExcelに読み込んで印刷すればいいんじゃないでしょうか?
    • good
    • 0

データでなく、どう見てもマクロファイルだと思うのですが。

。。

テキストファイルからデータを読み込むマクロのようですが、マクロを実行させたいなら、コピーしてマクロファイルに貼り付ければマクロは実行できるようになると思います。

CSV型式のデータなら、エクセルに直接読み込めますが、何が問題なのでしょうか?
    • good
    • 0

>CSV形式で編集された


「編集」とは何でしょうか。CSV形式で「作成された」
と言う意味でしょうか。言いかえると「CSV形式のファイルを」で良いのでしょうか。
それならファイル-開くのエクセル操作で出来ますが。
>EXCELファイルへ編集し
この「編集」もどう言う意味でしょうか。エクセルへ「読みこむ」とか、「インポートする」とか言われることですか。
エクセルへ読みこんで、印刷するまでに、なにかデータを加工するのはエクセルの機能でやれば良い。
>印刷する方法
エクセル操作で出来ますが、プログラムでやるのですか。
●(A)VBの世界から、エクセルVBAに入って処理する必要があるのか(B)エクセルVBAだけで処理できると思うが、それで良いのでしょうか、どちらでしょうか。
●上のプログラムだって、問題のための問題、練習問題のような感じがします。i.100+i,10+iのデータとは仮のデータですか。普通はデータを作るのに、エクセルに打ちこむ方が安定性・操作性がよいですよ。
●下記をご参考までに。7項目で、文字列項目には””で
囲んでない形式の場合の例です。
Sub test02()
i = 1
Open "c:\my documents\a13.csv" For Input As #1
p01:
If EOF(1) Then GoTo e01
Line Input #1, s
ss = Split(s, ",")
For j = 0 To 6
Cells(i, j + 1) = ss(j)
Next j
i = i + 1
GoTo p01
e01:
Close #1
Range("A1:G" & i).PrintOut
End Sub

この回答への補足

添付例は、CSV形式のテキストファイルを作るところのサンプルで添付しました。
質問内容は、CSV形式のテキストファイル作成後、
(1)VBからEXCELファイルを開いて
(2)上記テキストファイルをEXCELシートへ編集し
(3)VBから印刷プレビューを出し
(4)印刷指示することで
全て、VBから制御する内容を考えていました。
説明不足で失礼しました。

補足日時:2003/12/21 15:12
    • good
    • 0

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