|
こんにちは
Sub test()
Dim objF As Object
Dim objA As Object
Dim fPath As String
Dim oFile As Object
Set objF = CreateObject("Scripting.FileSystemObject")
Set objA = CreateObject("ADODB.Recordset")
objA.Fields.Append "FileName", 200, 300, 32 ', adVarChar, MaxCharacters, adFldIsNullable
objA.Fields.Append "ModifiedDate", 200, 300, 32
objA.Open
fPath = ThisWorkbook.Path
For Each oFile In objF.GetFolder(fPath).Files
If oFile Like "*.csv" Then
objA.AddNew
objA.Fields(0) = oFile
objA.Fields(1) = oFile.DateLastModified
objA.Update
End If
Next
objA.Sort = "ModifiedDate ASC" '昇順
objA.MoveFirst
Do Until objA.EOF
'処理Start
Debug.Print objA.Fields(1).Value & "----" & objA.Fields(0).Value
'処理End
objA.MoveNext
Loop
objA.Close
Set objA = Nothing
Set objF = Nothing
End Sub
一旦読み込ん並べて処理する感じです。
▼もりC さん:
>特定のフォルダ内にある.csvファイルをファイルが更新した順に
>読み込んでいく方法がわかりません。
>
>ファイルを読むには
> pathname = ThisWorkbook.Path
> fname = Dir(pathname & "\*.csv", vbNormal)
>
>などと記述していましたが、これでは名前順でしか対応できません。
>
>どなたかよい方法をご存知でしたら、ご教授ください。
|
|