With Application.FileSearch
.NewSearch: .LookIn = "C:\123\": .FileName = "*.pmd": .Execute
If .FoundFiles.Count = 0 Then GoTo skipp
FPath = Split(.FoundFiles(1), "\") 'тут единица, т.к. файл *.pmd всегда только один.
FilePath1 = "C:\123\" & FPath(3)
FilePath2 = "C:\1234\" & FPath(3)
fso1.CopyFile FilePath1, FilePath2, True
End With
skipp:
Как можно выйти из цикла With - End with
Код:
Можно ли как-то иначе покинуть эту конструкцию, нежели с помощью goto?
И еще вопрос. У меня не получилось избежать прямого указания номера в массиве FPath(3). Подскажите пожалуйста, как использовать Ubound в данном случае.
Спасибо.
Может я неправ, давно на Visual Basic не писал.
With...End With - это не цикл, а конструкция, которая облегчает при написании кода получать доступ к переменным внутри контейнера.
Точно. Без отсыла к метке не обойтись.
Лучше найдите другой путь. Ведь он есть и как минимум - один.
If .FoundFiles.Count = 0 Then GoTo skipp
надо:
If .FoundFiles.Count <> 0 Then
...
copy что-то там куда-то там
...
End if
И никаких goto!
Спасибо за стимуляцию мозгов ;-)))