Защита листа и автофильтр

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
tolikt
Сообщения: 93
Зарегистрирован: 29 окт 2005, 12:33
Откуда: NewVasюbirsk

На защищённом листе не работает автофильтр. Как обойти?

Если в Формат ячеек->Защита убрать галку "Защищаемая ячейка", то после установки защиты листа только из пунктов "Объекты" и "Сценарии", то автофильтром воспользоваться можно, но и данные листа не защищаются от изменений.
Немного не понятно. Ведь автофильтр не меняет какие-либо данные на листе, а только отображает их по условию фильтра. Тогда почему не работает?
Pavel55
Сообщения: 418
Зарегистрирован: 20 окт 2006, 11:40
Откуда: Moscow

Если у вас Офис 2003, то когда вы защищаете лист (меню Сервис-Защита-Защитить лист...), то там можно разрешить (поставить галочку) на пункте "использование автофильтра"
Pavel55
Сообщения: 418
Зарегистрирован: 20 окт 2006, 11:40
Откуда: Moscow

Если у вас Офис 2003, то когда вы защищаете лист (меню Сервис-Защита-Защитить лист...), то там можно разрешить (поставить галочку) на пункте "использование автофильтра"

P.S. только сперва установите автофильтр (чтобы отображались стрелочки в шапке таблице), а потом защищайте лист.
Аватара пользователя
VictorM
Сообщения: 794
Зарегистрирован: 23 окт 2006, 01:44
Откуда: Lugansk, Ukraine
Контактная информация:

Можно защитить лист из VBA при запуске рабочей книги. В модуле Эта книга поместите

Код: Выделить всё

Private Sub Workbook_Open()
Sheets("Лист1").Protect Password:="12345", UserInterfaceOnly:=True
Sheets("Лист1").EnableAutoFilter = True
End Sub
в этом случае лист будет недоступен для изменений пользователем, но останется доступным для работы макросов. А вторая строчка разрешает работу автофильтра.
http://www.msoffice.nm.ru/faq/macros/wo ... .htm#faq86
tolikt
Сообщения: 93
Зарегистрирован: 29 окт 2005, 12:33
Откуда: NewVasюbirsk

Да, забыл указать Excel 97.
И пункта "использование автофильтра" в меню "Защита" нет.
Но совет VictorM помог.
masjanja80
Сообщения: 7
Зарегистрирован: 12 фев 2009, 10:16

Здравствуйте.

Дана таблица, в которй может заполнять пользоветель только ту часть, к которой он относится. Т.е исполнитель заполняет часть "исполнитель". Код берет даннные о пользоветеле из свойств офиса, т.е. имя которое указано при установке офиса tools => options => general
Пробовала следовать вышенаписанным примерам, но автофильтр либо не работает, либо при открыитии книги требуется код, либо run-time error :rolleyes:
Как это заставить работать? И чтоб не спрашивал код. Кроме автофильтра (который недоступен) все работает
Вложения
1.zip
(10.02 КБ) 43 скачивания
Teslenko_EA
Сообщения: 526
Зарегистрирован: 04 фев 2007, 18:37
Откуда: Сургут
Контактная информация:

Здравствуйте masjanja80.
Вы вполне могли бы создать собственную ветку форума, используя только ссылку на текущую.
Евгений.
Вложения
1_.zip
(13.14 КБ) 47 скачиваний
masjanja80
Сообщения: 7
Зарегистрирован: 12 фев 2009, 10:16

спасибо... Вроде работает :) Прощу прощения за запоздалый ответ :rolleyes:
Ответить