Страницы: 1
RSS
[VBA] Eсли в папке нет файлов, перейти на указанную строку макроса, как правильно задействовать оператор Go To
 
Добрый день
У меня довольно простой вопрос, но поиском его найти не смог :)
Есть некий код, который открывает файл из папки open. Как правильно будет внедрить оператор Go To (либо альтернативу), что если в папке open нет файлов, то переходить на заданную строку, т.е. опускать часть кода

Код
    Dim MyName As String
    Dim MyPath As String
    Dim sPath As String
        MyPath = "C:\Users\PC\Desktop\open\"
        MyName = Dir(MyPath & "*.xlsm")
         Do While MyName <> ""
            sPath = MyPath + MyName
            Excel.Application.Workbooks.Open sPath
            MyName = Dir
         Loop
спасибо!
caustic
 
А если в папке 5000 файлов?
Цитата
caustic написал: Есть некий код
- это огрызок кода, к-рый вызывает только вопросы. А Go To мы в большинстве своем, стараемся избегать.
Я сам - дурнее всякого примера! ...
 
kuklp, привет!
нет, в папке будет либо 1 файл, либо ни одного

У меня этот самый огрызок кода открывает файл и далее обрабатывает его. Но может быть и так, что в папке не будет файла. В таком случае нужно код, который обрабатывает открывший макросом файл, пропустить. Как правильно будет будет это записать?
caustic
 
Код
     Dim MyName As String
    Dim MyPath As String
    Dim sPath As String
    Dim n&
        MyPath = "C:\temp\"
        MyName = Dir(MyPath & "*.xlsm")
         Do While MyName <> ""
            sPath = MyPath + MyName
            Excel.Application.Workbooks.Open sPath
            MyName = Dir
            n = n + 1
         Loop
         If n > 0 Then
'         ... ' тут код к-рый пропустим если нет файлов
         End If
Я сам - дурнее всякого примера! ...
 
Цитата
caustic написал:
в папке будет либо 1 файл, либо ни одного
- тогда еще проще:
Код
    On Error Resume Next
    Workbooks.Open "C:\temp\" & Dir("C:\temp\*.xlsm")
    If Err Then
        Err.Clear
        Else
        '         ... ' тут код к-рый пропустим если нет файлов
    End If
    On Error GoTo 0
Я сам - дурнее всякого примера! ...
 
kuklp, работает! Благодарю! ;)
caustic
Страницы: 1
Читают тему
Наверх