そのため、ドキュメント内のすべてのファイルを開き、各ドキュメントから情報をコピーして貼り付けるコードを VBA で作成しています。コードはすべてのドキュメントを開くように設定されていますが、それ自体です。私のジレンマは、メインファイルが変更された最後の日以降に変更されたドキュメントをコードで開くことです。基本的に、2 つの日付を比較して、1 つの日付を同じままにし、もう 1 つの日付をループごとに変更します (ループごとに新しいドキュメント)。私のコードは以下にあり、どんな助けや提案も大歓迎です。ありがとう!
Sub LoopThroughDirectory()
Dim MyFile As String
Dim erow
Dim Filepath As String
Dim DateMaster As Date
Dim DateReflections As Date
Filepath = "Path of folder where all the documents are"
MyFile = Dir(Filepath)
DateReflections = FileDateTime(Filepath)
DateMaster = FileDateTime("Filepath of master document I'm comparing to")
Do While Len(MyFile) > 0
If MyFile = "zmasterfile.xlsm" Then
Exit Sub
If DateReflections < DateMaster Then
Exit Sub
End If
Workbooks.Open (Filepath & MyFile)
Range("B4:N4").Copy
ActiveWorkbook.Close
erow = Sheet1.Cells(Rows.Count, 2).End(xlUp).Offset(1, 0).Row
ActiveSheet.Paste Destination:=Worksheets("Reflections").Range(Cells(erow, 2), Cells(erow, 14))
MyFile = Dir
Loop
End Sub