![]() |
|
Модераторы: mihanik |
![]()
|
|
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
Доброго времени суток! Подскажите, существует ли короткий код VBA, позволяющий открывать документ в режиме "только для чтения" (без возможности сохранения файла), но одновременно с тем позволяющий при активации кнопки и последующем вводе пароля открывать документ для полный доступ?
пока что идеи такие:
однако, каждый лист замучаешься разблокировать паролем + остается проблема сохранения самого файла пользователем "для чтения"... Это сообщение отредактировал(а) kashemirny - 19.8.2009, 19:26 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Но с возможностью редактирования? Ну разве только перехватом запроса на сохранение... А нахрена? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
Akina, чтение - оно и есть чтение. пример: меня нет на работе, а срочно требуется распечатать готовую смету - документ xl открывает тот, кому нужна эта самая смета, при этом не имеет возможности ее откорректировать или сохранить. лица, ответственные за сметы, знают pass (я и мой напарник) и работают с документом как обычно (сохраняют, редактируют и т.д.)
p.s. что за перехват и как его сделать? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Защита книги и каждого листа от изменения - вполне достаточно.
Сервис - Защита -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
Akina, это вам достаточно, а мне - отнюдь. если речь идет речь об ответственности за правильность расчетов, нужно предусмотреть любое "варварство" со стороны юзеров.
p.s. как записать в файл xl служебную информацию, такую как юзер_домена, имя_машины)? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Если книга защищена - юзеру будет трудно придумать "варварство" иное, нежели удаление. Посмотри книгу в аттаче. Оба листа защищены (пароль любого из листов - 666), в одном запрещено всё, даже выделение ячеек. Книга также защищена (пароль пустой). Попробуй её испоганить, не вводя пароля... Присоединённый файл ( Кол-во скачиваний: 3 )
WorkBook1.zip 9,91 Kb-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
интересно.... а каким образом организовано все это? макроса в книге не нашел
|
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Читай мои ответы с самого начала. Медленно и вслух.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
прочитал, все уяснил, НО: каждый лист открывать паролем очень долго.
хочется простоты и эффективности. в аттаче пример с элементом интерфейса. пример не проработан по 3м пунктам, хочется вот чего: - при нажатии на кнопку "Хочу полный доступ" должен выполняться не макрос Full, а popup-окно с предложением ввести пароль, при правильном вводе пароля должен сработать макрос Full, при неправильном - выход из приложения - после окончания работы с файлом в режиме полного доступа и его закрытии должен выполниться макрос HideIt для преведения файла в изначальный вид. - при открытии файла кнопкой "для чтения" файл ни в коем случае нельзя дать сохранить! помогите, плиз Присоединённый файл ( Кол-во скачиваний: 2 )
______.rar 32,04 Kb |
|||
|
||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
Akina, памагитя!
|
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
popup-окно - это inputbox(). А лучше - самописное окно. Всё необходимое для реализации у тебя есть. Чего нет - получи с помощью макрорекордера. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| FINANSIST |
|
||||
|
Статус: Жив ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 11.4.2008 Где: Москва Репутация: 13 Всего: 23 |
kashemirny, в объект "Эта книга" вставляешь следующий код:
На лист кидаешь кнопку CommandButtonUnprotect и в объект данного листа вставляешь процедуру обработки события нажатия на данную кнопку:
-------------------- “...Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности” Эдуард Успенский, “Каникулы в Простоквашино” |
||||
|
|||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
FINANSIST, большое спасибо, только я уже организовал запуск макроса через комбинацию клавиш в персонале (кстати, присваивать макросы можно только в комбинации с контролом или можно назначить что-нибудь из F5-F12?). запуск через комбинацию клавиш - все же быстрее ввода пароля, да и безопаснее.
ваш вариант интересен тем, что наделяет книгу отсутствием необходимости защищать листы при сохранении и закрытии файла, что по сути очень важно - ведь любые пользователи сохраняються во время работы с таблицей, в моем случае такую защиту я еще не предусмотрел - буду переделывать ваш макрос, посмотрим что получится! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| kashemirny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 12.11.2007 Репутация: нет Всего: нет |
код после небольшой доработки - события обрабатываются при сохранении, а не при закрытии:
еще раз - огромное спасибо, FINANSIST Это сообщение отредактировал(а) kashemirny - 2.10.2009, 15:31 |
|||
|
||||
![]()
|
| Правила форума "Программирование, связанное с MS Office" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |