|
こんにちは。ヘルプを見ても意味があまりよくわからないほどの
レベルです。宜しくお願いいたします。
フォルダ内にBNDファイルというファイルが120くらいあって、(CSVファイルって言うんでしょうか?テキストファイルとして読み込めます。)1つのファイルを読み込むと、A1からE16までデータが入っています。このデータを
ファイル1 C7 C9 C8 C13 C15 C14
ファイル2 C7 C9 C8 C13 C15 C14
ファイル3 C7 C9 C8 C13 C15 C14
・・・・
ファイル120
という風に表にしたいと思っています。
質問箱の過去のものを検索して私でもなんとか内容が理解できるものが、以下の
記事でした。1行だけ読み込むマクロなので、私がやりたいこととは
違うのですが、ここまでは実際に試してできました。
[#25953]
Option Explicit
Sub Macro1()
Dim MyPath As String
Dim MyName As String
Dim OpenFileName As String
Dim n As Long
Dim buf As Variant
Dim tmp As String
Dim RowNo As Long
MyPath = ThisWorkbook.Path ' CSVのフォルダ名の指定
MyName = Dir(MyPath & "\*.csv") 'CSVファイルすべて
RowNo = 1
Do While MyName <> "" ' ループを開始します。
'元のCSVファイル名のフルパス
OpenFileName = MyPath & "\" & MyName
'変更したファイルをテキストモードで開く
n = FreeFile
Open OpenFileName For Input As #n
'最初の1行を読み込む
Line Input #n, tmp
Close #n
'カンマごとに区切る
buf = Split(tmp, ",")
'Ax:Dx(xは行番号)セルに書き込む
Range("A" & RowNo & ":D" & RowNo) = buf
'行番号をカウントアップ
RowNo = RowNo + 1
'次のファイルを探す
MyName = Dir
Loop
MsgBox "終了"
End Sub
この後、どう変更すればよいのかよくわかりません。
1行ではなくて16行ある場合はどうしたらよいのか。
そのうち必要なデータのみ抽出するにはどうしたらよいのか。
初歩的な質問で大変申し訳ありませんが、教えていただけないでしょうか?
宜しくお願いいたします。
|
|