|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.03.2009, 10:58 | #11 |
Регистрация: 24.03.2009
Сообщений: 3
|
Ок, прикрепляю
|
24.03.2009, 12:52 | #12 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Макрос "Защитить" должен находиться не в модуле конкретного листа, а в общем программном модуле (см. вложение).
Обратите внимание, что код макроса применяется для активного листа при открытии книги. Если же данные действия нужно применить к нескольким (или ко всем) листам - организуйте соответствующий цикл.
Чем шире угол зрения, тем он тупее.
|
24.03.2009, 15:03 | #13 |
Регистрация: 24.03.2009
Сообщений: 3
|
Понятно, теперь получилось , только возник следующий вопрос: можно ли как то скрыть пароль в макросе?
|
25.03.2009, 04:42 | #14 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Цитата:
Чем шире угол зрения, тем он тупее.
|
|
20.05.2009, 11:49 | #15 | |
Регистрация: 19.05.2009
Сообщений: 3
|
Цитата:
Поясню - проблема таже - есть excel-евский файл со сложной структурой допусков юзеров к тем или иным ячейкам - работает все это естественно если включена защита листа. Таблица большая и активно задействована группировка - которая не работает с защитой листа. Сделал все как здесь указано - через макрос, однако если его текст не защитить (точнее не скрыть пароль защиты листа который в нем есть) нафиг вся эта защита нужна - если пароль на защиту будеть лежать в открытом виде в макросе? можно ли как нибудь скрыть пароль или запретить просмотр макросов? Сразу скажу что юзеры не хакеры - не надо защиту как для пентагона. Еще как вариант если дать файлу общий доступ и защитить книгу - просмотреть макрос будет нельзя, но и сам он не запускается (по крайней мере не запускается тот код, который представлен в этой теме) выходит ошибка: Run-time error '1004': Application-defined or object-defined error
http://www.u-tube.ru/ - Видеохостинг
|
|
20.05.2009, 12:05 | #16 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Самое простое - откройте файл, затем удерживая Alt, последовательно нажмите F11, T, E. в появившемся окне открыть вкладку "Protection" и установить пароль на VBA проект.
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 20.05.2009 в 12:07. |
20.05.2009, 15:58 | #17 |
Регистрация: 19.05.2009
Сообщений: 3
|
сенькс.
Однако возникла еще одна проблема, которую как то не увидел сразу: защищая лист я оставляю галочки для возможности форматирования ячеек - т.е. ДО запуска макроса можно сдвигать-раздвигать строки (в зависимости от содержимого) но стоит сохранить файл, открыть его заного - разрешаем запуск макросов - он запускается - вуаля: все робит, а форматирование теперь нет!!! До запуска макроса на защищенном листе форматирование возможно. т.е. макрос защищая лист дает ему какието обрезанные права. Это как то правиться?
http://www.u-tube.ru/ - Видеохостинг
|
21.05.2009, 04:55 | #18 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Цитата:
В любом случае, когда защиту листа устанавливает макрос, нужно во-первых, прописать все, что Вам требуется, во-вторых, это не сохраняется при закрытии файла. Чтобы решить все Ваши проблемы, нужно: 1. Включите макрорекордер, установите защиту листа вручную, с выбором всех необходимых опций (выделение, копирование, форматирование и т.п.), затем, отключите запись макроса, войдите в VBE и посмотрите полученный код. Для того, чтобы макросы, в отличии от пользователей, могли вносить изменения на защищенном листе не снимая и вновь устанавливая каждый раз защиту, добавьте опцию UserInterfaceOnly:=True. Этот код и используйте в макросе, устанавливающем защиту. 2. Многие опции защиты, установленные макросом, не сохраняются при сохранении файла. Поэтому, по событию открытия книги нужно снять сохраненную защиту и установить требуемую. Именно так и сделано в моем примере выше. При открытии файла запускаем макрос "Защитить", который делает все, что нужно. Код:
Чем шире угол зрения, тем он тупее.
|
|
21.05.2009, 09:21 | #19 |
Регистрация: 19.05.2009
Сообщений: 3
|
Спасибо!
Теперь разобрался, все заработало! А кто нибудь знает, почему макросы не работают (конкретно - который в этой теме) если книгу защитить и дать ей общий доступ? - вылазит ошибка о которой я писал выше?
http://www.u-tube.ru/ - Видеохостинг
|
30.10.2009, 18:12 | #20 | |
Новичок
Джуниор
Регистрация: 30.10.2009
Сообщений: 1
|
Цитата:
Последний раз редактировалось amilaxvari; 31.10.2009 в 01:36. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как заставить работать макрос при защите листа | qwertyuzer | Microsoft Office Excel | 4 | 11.02.2009 15:20 |
Формирование листа при множественом выборе файлов | Руслантус | Общие вопросы C/C++ | 2 | 09.08.2008 23:16 |
Добрый день и снова вопрос по защите) | Wasily | Microsoft Office Excel | 17 | 18.06.2008 10:26 |
При закрытии листа, стираются данные | Romuald | Microsoft Office Excel | 2 | 20.12.2007 13:24 |
Удалить строку листа Excel при выполнении условия | Gennady | Microsoft Office Excel | 14 | 18.12.2007 13:54 |