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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.08.2009, 11:34   #1
Chelentano
Пользователь
 
Регистрация: 06.07.2009
Сообщений: 45
По умолчанию Run-time error 1004 для метода Unprotect при общем доступе

Уважаемые господа,

В защищённой книге строки с закрытыми для ввода ячейками даже макрос удалять не может, но в то же время для пользователей книга должна быть постоянно защищённой (в ней есть закрытые для ввода ячейки), поэтому я создал макрос удаления строк, который начинается с ActiveSheet.Unprotect и заканчивается ActiveSheet.Protect. Но когда я открыл данную книгу для общего доступа, то мой макрос споткнулся: Run-time error '1004': Метод Unprotect из класса Worksheet завершён неверно.

Буду очень благодарен за любую подсказку, как устранить эту неприятность!

Последний раз редактировалось Chelentano; 11.08.2009 в 11:36.
Chelentano вне форума Ответить с цитированием
Старый 11.08.2009, 12:47   #2
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

При общем доступе нельзя снять защиту, либо поменять её параметры.
Возможно поможет такой вариант. Пред установкой общего доступа к книге, поставьте защиту макросом так
Код:
ActiveSheet.Protect Password:="123", DrawingObjects:=False, Contents:=True, UserInterfaceOnly:=True
Тогда изменения на листе можно производить только посредством макроса.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 11.08.2009, 16:57   #3
Chelentano
Пользователь
 
Регистрация: 06.07.2009
Сообщений: 45
По умолчанию

Прист, спасибо огромнейшее! Эх, в который раз Вы меня уже вместе c EducatedFool и IgorGO выручаете! Вот хотел добавить ещё Вам положительный отзыв, а мне почему-то система выдает сообщение, что я должен добавить отзыв сначала кому-то ещё, эх.

Я раньше ставил защиту на лист через меню Сервис>Защита. После этого мой макрос не работал на удаление строк, так как в каждой строке у меня есть защищённые ячейки. А поставив защиту через Ваш макрос, мой макрос стал удалять строки с защищёнными ячейками и мне не понадобилось в нём прописывать Unprotect в самом начале и Protect в самом конце! И в общем доступе мой макрос работает так как я избежал в нём Unprotect-Protect!
Chelentano вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос не отрабатывает копирование при общем доступе к книге Chelentano Microsoft Office Excel 6 07.08.2009 20:17
Run-time error '1004'. Недопустимый параметр! nikolai_P Microsoft Office Excel 2 20.04.2009 18:06
Ошибка Run-Time error 13 DEZuv Microsoft Office Access 0 03.04.2009 12:25
При создание edit, в режиме run-time, нет стандартного контекстного меню slips Общие вопросы Delphi 6 08.11.2008 17:05
Подскажите! Run-time error '7' Out of memory evgenjp Свободное общение 3 01.10.2008 09:16