| 
    
     |  | 以前は、指定したファイルを開く方法で投稿させてもらい、解決できたのですが、 処理内容が変わりまして、
 今度は、末尾[BS]となっているファイルを順番にエクセルに読み込んでいく…という動作をさせたいと思っています。
 どうしても、いまいちできずに悪戦苦闘しております
 
 お分かりになる方、どうか、教えていただけないでしょうか?
 
 よろしくお願いします
 
 Cドライブの中の[Temp]フォルダの中にテキストデータが複数存在します
 現在は100件くらいファイルが入っています
 
 例えば、下記のようなテキストデータが入っているフォルダがあります
 ABC_部品A_---A_PS.txt
 ABC_部品A_---A_BS.txt
 ABC_部品B_---A_PS.txt
 ABC_部品B_---A_BS.txt
 ABC_部品C_---A_PS.txt
 ABC_部品C_---A_BS.txt
 
 
 例えば、ファイルの末尾が[BS]となっているテキストファイルのデータを順番にエクセルに読み込む動作をさせたいのです
 (上記の場合だと、3つのファイルの内容を一つのエクセルシートに読込みたい)
 
 現在は下記のようなコードになっています
 今は、指定したファイルを開いて、エクセルに読み込むというVBAになっています。
 
 Sub txt取込()
 
 Dim i As Integer, j As Integer
 Dim Mytxt As String, Mystr As String
 Dim MyRange As Range, TmpRange As Range
 Dim FileName As String
 Dim myPath As String
 Dim strDir As String
 
 
 Worksheets.Add before:=Worksheets(1)
 Worksheets(1).Name = "txtData"
 
 FileName = "部品A"
 strDir = "C:\Temp\"
 Mytxt = Dir(strDir & "\ABC_" & FileName & "*BS.txt")
 
 Worksheets("txtData").Activate
 Range("A1").CurrentRegion.Clear
 Set MyRange = Range("A1")
 
 Open strDir & Mytxt For Input As #1
 
 
 Do Until EOF(1)
 Line Input #1, Mystr
 MyRange.Offset(i).Value = Mystr
 i = i + 1
 Loop
 Close #1
 
 Set TmpRange = Range(MyRange, MyRange.End(xlDown))
 
 TmpRange.TextToColumns DataType:=xlDelimited, comma:=True, _
 fieldinfo:=Array(Array(1, 1), Array(2, 1), Array(3, 2), Array(4, 1), Array(5, 1), Array(6, 1), _
 Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1))
 
 end sub
 
 VBA初心者ですが、よろしくお願いします
 
 
 |  |