Я согласен с Кеном: вы просите слишком много в одном вопросе. Также «захватывает данные из моей рабочей книги, а затем вставляет ее в мою выходную книгу», это может означать что угодно. Однако это функция, которую я использую для решения первой части вашего требования. Параметры - это имя папки и шаблон файла. Он возвращает имя самого нового файла в папке, соответствующей шаблону.
Function NewestFileName(ByVal Path As String, ByVal FileTemplate As String) As String
' * Finds, and returns the name of, the newest file in folder Path with a name
' that matches FileTemplate. Returns "" if no matching file is found.
' * Path Folder in which to search for files
' * FileTemplate File name specification of the file required. For example:
' MyFile*.xls
' 25Jul11 Copied from RiskRegisterControl V43.xls.
' 22Nov11 Name changed from NewestFile to NewestFileName to match NextFileName.
' 20Apr12 Minor improvements
Dim FileDateCrnt As Date
Dim FileDateNewest As Date
Dim FileNameCrnt As String
Dim FileNameNewest As String
If Right(Path, 1) <> "\" Then
Path = Path & "\"
End If
FileNameCrnt = Dir$(Path & FileTemplate)
If FileNameCrnt = "" Then
NewestFileName = ""
Exit Function
End If
FileNameNewest = FileNameCrnt
FileDateNewest = FileDateTime(Path & FileNameCrnt)
Do While True
FileNameCrnt = Dir$
If FileNameCrnt = "" Then Exit Do
FileDateCrnt = FileDateTime(Path & FileNameCrnt)
If FileDateCrnt > FileDateNewest Then
FileNameNewest = FileNameCrnt
FileDateNewest = FileDateCrnt
End If
Loop
NewestFileName = FileNameNewest
End Function
Я понятия не имею, о чем вы спрашиваете. Вам нужно будет [изменить], чтобы сделать его более понятным. При этом помните, что у нас есть информация ZERO о том, что вы пытаетесь сделать, кроме того, что вы говорите нам в своем вопросе; мы не можем читать ваши мысли, чтобы выяснить, что вы пытаетесь нам рассказать. Пожалуйста, четко сформулируйте проблему и ** задайте конкретный вопрос **. См. [Как задать хороший вопрос здесь?] (Http://stackoverflow.com/help/how-to-ask) для некоторых советов. –
Хорошо, прошу прощения, я постараюсь исправить это. –