|
защита редактирования ячеек Ексель из 1с | ☑ | ||
---|---|---|---|---|
0
Александр056
21.12.16
✎
16:21
|
собственно задача в заголовке, сейчас реализовано так что защищается весь лист паролем и соответственно нельзя наложить фильтры или изменять ширину колонок.
http://paste1c.ru/Lrk собственно вот макрос, причем закрывается не весь лист, а определенный диапазон ячеек остается доступным для редактирования(выбор из списка). как получить тот же результат, только с возможностью фильтров и изменения ширины колонок? |
|||
1
Tatitutu
21.12.16
✎
16:48
|
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _ AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _ :=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _ AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _ AllowUsingPivotTables:=True |
|||
2
Tatitutu
21.12.16
✎
16:58
|
добавь вот это в начале
Cells.Select Selection.Locked = False Selection.FormulaHidden = False //////////////////////////////////////// Range("E6:I22").Select ' а вот тут область которая у тебя должна защищаться Selection.Locked = True Selection.FormulaHidden = True ///////////////////////////////////////// и дальше замени на ActiveSheet.Protect Password:="********", DrawingObjects:=True, Contents:=True, Scenarios:= _ False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _ AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _ :=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _ AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _ AllowUsingPivotTables:=True |
|||
3
Александр056
21.12.16
✎
17:01
|
о круто спасибо, чуть позже попробую)
|
|||
4
Александр056
21.12.16
✎
18:16
|
(2) 1 пост мимо? все во втором?
|
|||
5
Александр056
21.12.16
✎
18:59
|
Если я правильно понял то:
ТекстМакроса = "Sub ProtectSheet() |Cells.Select |Selection.Locked = False |Selection.FormulaHidden = False | Range(""Y1:Y2"").Select |ActiveWorkbook.Names.Add Name:=""AnswersOptions"", RefersToR1C1:= _ | ""=Лист1!R1C25:R2C25"" |Range(""Y"+НачСтрока+":Y"+КонСтрока+""").Select |Selection.Locked = True |Selection.FormulaHidden = True |ActiveSheet.Protect Password:=""ОбороноСпособность"", DrawingObjects:=True, Contents:=True, Scenarios:= _ |False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _ |AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _ |:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _ |AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _ |AllowUsingPivotTables:=True |End Sub"; и не работает, защита стоит на листе, но ячейки все полностью доступны |
|||
6
Александр056
21.12.16
✎
20:01
|
ап, неразобрался(
|
|||
7
Александр056
21.12.16
✎
20:02
|
не*
|
|||
8
shadow_sw
22.12.16
✎
03:53
|
в экселе работает обратный способ - закрывается весь лист, а часть ячеек разрешается на редактирование(офис 2013)
|
|||
9
Tatitutu
22.12.16
✎
09:37
|
(7) ты вот это опустил.
сделай вручную на своем файле и проверь работу **************************************************************** добавь вот это в начале Cells.Select Selection.Locked = False Selection.FormulaHidden = False //////////////////////////////////////// Range("E6:I22").Select ' а вот тут область которая у тебя должна защищаться Selection.Locked = True Selection.FormulaHidden = True ///////////////////////////////////////// |
|||
10
Александр056
22.12.16
✎
13:25
|
(9) я вроде добавил, первые три строки как есть....чет не соображу пока что....
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |