Добрый день. Подскажите как защитить ячейки от редактирования, но чтобы "плюсики" работали? В файле выделила синим, то что нужно запретить для редактирования. При обычном запрете редактирования и с защитой листа. Ячейки не редактируются, но и группировки не работают. Может быть есть какой то способ. Очень прошу помогите.
Юрий М, я читала эту статью темы схожи, но ответа нет. Если бы я понимала принцип, я бы не спрашивала. Там идет речь о нерабочем макросе МSO 2016. А я не понимаю макросы и что нужно сделать и в какой последовательности. От того что я добавила макрос из статьи не изменилось ни чего. Что нужно сделать защитить ячейки добавить макрос или как?? НО не работает.Потому я тут и пишу.
The_Prist, Юрий М, Я читала эту статью 100 раз до того момента как написать. Я так понимаю, что автор Дмитрий, там прекрасно описано(для пользователей, которые работали в своей жизни с макросами, для всех остальных это ацкий ад и полное не понимание),что надо вставить 1 код в ЭтуКнигу и все работает. Я это сделала и как ни чего не работало так и не работает. Как структура была мертвой так и осталась.Что надо сделать? 1 Выделяю ячейки для запрета редактирования, 2 вставляю данный код в ЭтуКнигу, 3 защищаю паролем через рецензирование??? НЕ работает.Приложила файл, снять защиту рецензирования пароль 1. Может я не туда его вставляю?Может у меня MSO 2016? При всем при этом мне надо это все защитить паролем, что вызывает полнейшее не понимание КАК? Ну не получается, может это и просто для людей, который пол жизни этим занимаются и понимают это. НО очень тяжело для пользователей, которые представления не имеют о макросах,кодах и прочем.Спасибо.
Код
Sub Protect_and_Structure()
ActiveSheet.EnableOutlining = True
ActiveSheet.Protect Contents:=True, Scenarios:=True, UserinterfaceOnly:=True
End Sub
Oli2106 написал: а писать дабы показать какие вы многознающие
ну как Вам сказать...Если бы Вы читали статью - вопросов было бы меньше и Вы тоже стали бы чуть более знающим человеком Но раз непонятно из статьи - так и напишите. Но просьба выбирать выражения все же. Здесь никто Вам ничего вроде пока не обязан, чтобы терпеть подобные выпады. Понятно, что не со зла - но неприятно, знаете ли. Мы помочь пытаемся, а не подняться за Ваш счет В статье есть такое
Цитата
При этом особо отмечу - не надо перед выполнением этого кода устанавливать защиту на лист стандартными методами через вкладку Рецензирование
Вам вообще не надо трогать защиту листа, чтобы код работал. Он сам устанавливает защиту. А Вы установили вручную. Это раз.
Цитата
Можно ставить защиту сразу на все листы книги при открытии таким кодом: дальше идет код
Цитата
Примечание: данный макрос лучше всего прописывать на событие открытия книги(модуль ЭтаКнига(ThisWorkbook)), т.к. сразу после закрытия и открытия книги данная защита снимается.
Судя по Вашему файлу модуль ЭтаКнига Вы нашли. Только код вставили НЕ ТОТ, который надо, а почему-то только первый. Поэтому ничего и не работает.
Теперь по шагам опишу процесс, раз из статьи это не очевидно: Вы защиту НЕ УСТАНАВЛИВАЕТЕ через вкладку рецензирование. Оставляете не защищенными листы. Далее вставляете код
Код
Private Sub Workbook_Open()
Dim wsSh As Object
For Each wsSh In Me.Worksheets
Protect_and_Structure wsSh
Next wsSh
End Sub
Sub Protect_and_Structure(wsSh As Worksheet)
wsSh.Unprotect
wsSh.EnableOutlining = True
wsSh.Protect Contents:=True, Scenarios:=True, UserinterfaceOnly:=True
End Sub
в ЭтаКнига(туда, где у Вас уже есть код). Это важный момент - именно в этот модуль,Сохраняете книгу. Закрываете. После открытия книги все листы будут защищены, но возможность работы со структурой останется. Пробуйте.
Oli2106 написал: Перенеся вопрос в платные, решение найдется быстрее.
Да, но от получения решения в платном разделе смышленее в вопросе Вы не станете. Тупо получите решение.
Цитата
Oli2106 написал: писать дабы показать какие вы многознающие, а все остальные невнимательно читают как минимум не красиво
И все же внимательность при чтении статей подобного рода очень важна - как видно Вы упустили пару важных моментов, что и привело к непониманию принципа в целом и как следствие к неработающему как положено коду. Понятно, что человеку, имеющему с кодами первый опыт это сложнее - но это как в любом деле: всегда с чего-то надо начать и первый опыт труднее последующих...
P.S. Попробую пересмотреть подачу статьи так, чтобы было ясно что и как делать и неподготовленному человеку. Просто статья давно писалась и интерес к подобного рода кодам стал появляться чаще и все больше у тех, кто с макросами вообще дела не имел.