Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Открытие десяти файлов - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Открытие десяти файлов (Макросы/Sub)
Открытие десяти файлов
octopus Дата: Вторник, 06.09.2016, 15:14 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день! Мне необходимо открыть 10 файлов. Файлы должны находиться в одной папке с этим файлом
Хочу вывести сообщение о том, каких файлов в папке нет. Но при попытке открыть второй файл не обрабатывается ошибка оператором
On Error GoTo ошибка.
Т.е. после попытки открыть первый файл "файл_1.xlsx" - ошибка обрабатывается, а при попытке открыть второй файл
"файл_2.xlsx" - ошибка не обрабатывается.
Не пойму в чем дело. Может какой-то сброс надо делать типа err.clear
К сообщению приложен файл: 123.xlsm(18Kb)


Не судите строго новичка.....
 
Ответить
СообщениеДобрый день! Мне необходимо открыть 10 файлов. Файлы должны находиться в одной папке с этим файлом
Хочу вывести сообщение о том, каких файлов в папке нет. Но при попытке открыть второй файл не обрабатывается ошибка оператором
On Error GoTo ошибка.
Т.е. после попытки открыть первый файл "файл_1.xlsx" - ошибка обрабатывается, а при попытке открыть второй файл
"файл_2.xlsx" - ошибка не обрабатывается.
Не пойму в чем дело. Может какой-то сброс надо делать типа err.clear

Автор - octopus
Дата добавления - 06.09.2016 в 15:14
Manyasha Дата: Вторник, 06.09.2016, 15:34 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 1587
Репутация: 669 ±
Замечаний: 0% ±

Excel 2007, 2010
octopus, здравствуйте, не используйте метки, если можно обойтись без них.
IsBookOpen - Ваша функция.
[vba]
Код
Sub openBooks()
    Dim objFSO As Object, fPath As String
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    fPath = ThisWorkbook.Path & "\"
    файл = Array("файл_1.xlsx", _
             "файл_2.xlsx", _
             "файл_3.xlsx", _
             "файл_4.xlsx", _
             "файл_5.xlsx", _
             "файл_6.xlsx", _
             "файл_7.xlsx", _
             "файл_8.xlsx", _
             "файл_9.xlsx", _
             "файл_10.xlsx")
             
    For Each file In файл
        If Not IsBookOpen(CStr(file)) Then
            If objFSO.FileExists(fPath & file) = False Then
                notFound = notFound & ", " & file
            Else
                Workbooks.Open (fPath & file)
            End If
        End If
    Next file
    
    If notFound <> "" Then
        notFound = Mid(notFound, 3)
        MsgBox "Не найдены следующие файлы:" & vbCrLf & notFound
    End If
    
End Sub
[/vba]


marinamorozova_box@mail.ru
ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеoctopus, здравствуйте, не используйте метки, если можно обойтись без них.
IsBookOpen - Ваша функция.
[vba]
Код
Sub openBooks()
    Dim objFSO As Object, fPath As String
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    fPath = ThisWorkbook.Path & "\"
    файл = Array("файл_1.xlsx", _
             "файл_2.xlsx", _
             "файл_3.xlsx", _
             "файл_4.xlsx", _
             "файл_5.xlsx", _
             "файл_6.xlsx", _
             "файл_7.xlsx", _
             "файл_8.xlsx", _
             "файл_9.xlsx", _
             "файл_10.xlsx")
             
    For Each file In файл
        If Not IsBookOpen(CStr(file)) Then
            If objFSO.FileExists(fPath & file) = False Then
                notFound = notFound & ", " & file
            Else
                Workbooks.Open (fPath & file)
            End If
        End If
    Next file
    
    If notFound <> "" Then
        notFound = Mid(notFound, 3)
        MsgBox "Не найдены следующие файлы:" & vbCrLf & notFound
    End If
    
End Sub
[/vba]

Автор - Manyasha
Дата добавления - 06.09.2016 в 15:34
octopus Дата: Вторник, 06.09.2016, 15:54 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Manyasha, выручила. Спасибо, большое!!!


Не судите строго новичка.....
 
Ответить
СообщениеManyasha, выручила. Спасибо, большое!!!

Автор - octopus
Дата добавления - 06.09.2016 в 15:54
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Открытие десяти файлов (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!