Страницы: 1
RSS
Запрет на редактирование ячеек
 
Здравствуйте.
Есть следующий код.
При нажатии на кнопку он копирует лист "Master", задает имя новому листу и должен запретить редактирование диапазона "I7:P7"  в новом листе.
А потом запоролить новый лист.
Строка 10 (предпоследняя) почему то не работает.
Я знаю что надо послать сюда фаил эксэль, но это часть большого кода.
Спасибо

Код
Dim xNumber As Integer
On Error Resume Next   

Application.ScreenUpdating = False    
xNumber = ThisWorkbook.Worksheets.Count - 1    
Worksheets("Master").Copy Before:=ActiveWorkbook.Sheets("Master")
ActiveSheet.Name = "Ticket " & xNumber
    
ActiveSheet.Range("I7:P7").Value = Worksheets("Ticket1").Range("I7:P7").Value
            
ActiveSheet.Activate
Application.ScreenUpdating = True
    
Worksheets(ActiveSheet.Name).Range("I7:P7").Locked = True
     
Worksheets(ActiveSheet.Name).Protect Password:=MyPassword, UserInterfaceOnly:=True
Изменено: ttp8 - 27.10.2018 04:08:31
 
Наверное всё-таки нужно подумать о файле с примером. Я просто создал новый файл, обозвал один лист Master, снял защиту ячеек в диапазоне, и запустил макрос. Был создан новый лист на котором ячейки диапазона защищены.
Не стреляйте в тапера - он играет как может.
 
Цитата
Ts.Soft написал:
Наверное всё-таки нужно подумать о файле с примером.
Не хотел присылать весь файл. Спасибо

Цитата
Ts.Soft написал:
Был создан новый лист на котором ячейки диапазона защищены.
То есть код работает?
 
ActiveSheet.Activate - что это и зачем? Зачем активировать и без того активный лист? :)
И далее тоже идет небольшая чушь:
Worksheets(ActiveSheet.Name) - это обращение к АКТИВНОМУ листу. Но он у Вас уже есть: ActiveSheet
И самое главное - уберите On Error Resume Next. Тогда увидите ошибку, если она есть. Скорее всего проблема в том, что лист Master изначально защищен. Когда Вы его копируете, то защита остается и Вы пытаетесь изменить параметры ячеек(Locked). Попробуйте после строки
Код
Worksheets("Master").Copy Before:=ActiveWorkbook.Sheets("Master")

добавить:
Код
ActiveSheet.Unprotect MyPassword
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1
Наверх