Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.07.2009, 16:39   #1
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию пароль

Одна книга1.хls, содержит данные другой книги2.xls, которая при открытии запрашивает пароль.

Вопрос: Можно ли при отрытии книги1.xls вводить пароль (для обновления ячеек из книги2.xls) с помощью макроса.

Пароль для книги2.xls - 123
ruavia3 вне форума Ответить с цитированием
Старый 28.07.2009, 17:46   #2
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Private Sub Workbook_Open()

Workbooks("книга2.xls").Unprotect 123

End Sub

Не успевает срабатывать.
ruavia3 вне форума Ответить с цитированием
Старый 28.07.2009, 18:39   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

А что, если сначала открыть запароленную книгу, а потом - основную?
Код:
Sub TEST()
    Workbooks.Open "C:\Documents and Settings\книга2.хls", , , , 123
    Workbooks.Open "C:\Documents and Settings\книга1.хls"
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 28.07.2009, 19:18   #4
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Или в таком варианте:
Код:
Private Sub Workbook_Open()
Workbooks.Open "D:\Книга2.xls", , , , 123
ActiveWorkbook.UpdateLinks = xlUpdateLinksAlways
ActiveWorkbook.UpdateLinks = xlUpdateLinksNever
Workbooks("Книга2").Close
End Sub
pivas вне форума Ответить с цитированием
Старый 28.07.2009, 20:24   #5
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

1) оператору, который будет работать с книгой1.xls не должно быть видно книгу2.
2) Private Sub Workbook_Open() - сработает только после запроса пароля на открытие книги2
ruavia3 вне форума Ответить с цитированием
Старый 28.07.2009, 20:42   #6
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Код:
Workbooks.Open "D:\Книга2.xls", , , , 123
Эта строка кода открывает Книга2 без запроса пароля. Запрос у Вас выдаётся на обновление связей. Для того, чтобы код в предыдущем посте работал правильно в Книга1 надо отключить обновление связей и запрос на обновление. И, если добавить отключение обновления экрана, то Ваш оператор ничего не заметит.
pivas вне форума Ответить с цитированием
Старый 28.07.2009, 20:57   #7
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

как прописать программно:
отключение обновления связей и запрос на обновление и добавить отключение обновления экрана?
ruavia3 вне форума Ответить с цитированием
Старый 28.07.2009, 21:03   #8
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Код:
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Workbooks.Open "D:\Книга2.xls", , , , 123
ActiveWorkbook.UpdateLinks = xlUpdateLinksAlways
ActiveWorkbook.UpdateLinks = xlUpdateLinksNever
Workbooks("Книга2").Close
Application.ScreenUpdating = True
End Sub
это с отключением экрана. А обновление связей надо отключить вручную в Правка->Связи...->Запрос на обновление связей... выбрать пункт "Не задавать вопрос и не обновлять связи". Сохранить изменения и должно работать.
pivas вне форума Ответить с цитированием
Старый 28.07.2009, 22:55   #9
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

cпасибо, единственное смущает ",,,, 123" не могу проверить, т.к. на телефоне нет офиса.
ruavia3 вне форума Ответить с цитированием
Старый 29.07.2009, 10:14   #10
analyst
Пользователь
 
Регистрация: 30.06.2009
Сообщений: 32
По умолчанию

Цитата:
Сообщение от ruavia3 Посмотреть сообщение
cпасибо, единственное смущает ",,,, 123" не могу проверить, т.к. на телефоне нет офиса.
Всё правильно.
expression.Open (FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
FileName указали, updatelinks занулили, readonly занулили, format занулили, password указали!
analyst вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пароль ИринаLil Помощь студентам 12 25.03.2009 08:35
Пароль) Teen4jump Свободное общение 2 05.11.2008 21:11
Пароль Terran Общие вопросы Delphi 2 12.02.2008 22:32
Пароль Михаил Юрьевич Общие вопросы Delphi 3 06.02.2008 16:44
пароль администратора zetrix Безопасность, Шифрование 3 24.10.2007 15:33