Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
40 / 15 / 0
Регистрация: 03.11.2010
Сообщений: 13
1

Ошибка при выполнении процедуры Workbook.Open

24.02.2013, 10:19. Показов 2078. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть надстройка, вроде бы работает, но при запуске только из VBE (Run). Из Excel горячими клавишами Shift+Alt+O происходит прерывание после первого открытия файла (Хотя Множественный выбор). если вывести как кнопку, то срабатывает множественное открытие (Горячие кнопки не срабатывают).

Смысл надстройки. Открывать как Ctrl+O (MultiSelect), только если файл за паролен, то из листа надстройки столбца A собирается Массив Паролей и поочередно пытается открыть файл по списку паролей. Может что в коде перемудрил.
Подскажите пожалуйста.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Public Sub OpenPassword()
'Application.EnableCancelKey = xlDisabled
 
    Filt = "Все файлы (*.*), *.*," & _
    "Все файлы Excel (*.xlsx;*.xls), *.xlsx," & _
    "Все файлы Excel (*.xlsx;*.xls), *.xls,"
    FilesArray = Application.GetOpenFilename(Filt, 2, "Открыть документы с паролями", , True)
    If Not IsArray(FilesArray) Then Exit Sub
    
 
    
    Set WhantHelp = New ChangList
    
    For i = LBound(FilesArray) To UBound(FilesArray)
        
        'MsgBox FilesArray(i)
        For ti = 1 To WhantHelp.sKolMyArray
            'MsgBox WhantHelp.MyArray(ti)
            On Error GoTo NextTi
            Application.Workbooks.Open Filename:=FilesArray(i), Password:=WhantHelp.MyArray(ti) ' <---
            GoTo NextI
NextTi:
        On Error GoTo -1
        Next ti
NextI:
    On Error GoTo -1
    Next i
'Application.EnableCancelKey = xlEnabled
End Sub
OpenPassword.xla Сама надстройка. А в папке файлы для примера. Пароли в примере: Пароль1; Пароль2; Пароль3; Пароль4 (Не должен открываться только файл с паролем 123)
Вложения
Тип файла: zip Primer.zip (86.5 Кб, 10 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2013, 10:19
Ответы с готовыми решениями:

Как подавить скачки экрана при выполнении операции Workbooks.Open(.)?
Всем добрый день. В цикле открывается множество файлов командой Set book=Workbooks.Open(addr)....

This workbook you opened contains automatic links to information in another workbook
При открытии excel файла появляется сообщение : This workbook you opened contains automatic links...

Ошибка при выполнении программы на VBA
Добрый день, уважаемые специалисты. Прошу вашей помощи, ибо я уже закипаю) имеется функция:...

Ошибка при выполнении ThisWorkbook.Sheets.Visible = -1
Проблема такая есть скрипт, он работает, ну почти работает, он как и надо, при верном вводе пароля...

2
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
24.02.2013, 17:50 2
Kohonas, у меня и так, и так открывает все книги.

(Win7x64, office 2003)

Что за прерывание? Может у Вас какой процесс подвис?
1
40 / 15 / 0
Регистрация: 03.11.2010
Сообщений: 13
24.02.2013, 17:58  [ТС] 3
(Win7x64, office 2010)
Спасибо.
Читал о таком.
Что иногда процесс может зависать.
Попробую завтра на рабочих компьютерах.

Если пойдет пере установлю Office на мой любимый 2003. (блин 2 дня искал ошибки, обидно).
0
24.02.2013, 17:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.02.2013, 17:58
Помогаю со студенческими работами здесь

Вычисления: атоматически/вручную. Ошибка при выполнении макроса.
Есть две книги. В ПЕРВОЙ автоматическое вычисление отключается при открытии файла и его...

Ошибка при открытии файла размером свыше 1.5 Мб функцией Open
Всем доброго времени суток. Работаю с ACCESS 2007 и VBA. Пишу небольшую базу данных по работе. Дело...

Ошибка при выполнении макроса, который разбивает документ на отдельные pdf файлы
Есть макрос который разбивает документ на отдельные pdf файлы, но оно не всегда правильно работает....

Как при получении Workbook Excel не обновлять связи файла
Получаю объект: Dim objDWE As Object objDWE = GetObject(strPTmp &amp; &quot;TempPas.xls&quot;)Но этот объект...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru