Страницы: 1
RSS
Макрос защиты диапазона ячеек, доработка кода
 
Здравствуйте. Есть макрос на защиту ячеек. Взят с темы. Работает на всю книгу, скажите пожалуйста, как сюда дописать название конкретного листа?

Код
Private Sub
Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If intersect(target,sh.range("A4:BM4")) is nothing then exit sub    
With Application  
.EnableEvents = 0: .Undo: .EnableEvents = 1   
End With
End Sub

Изменено: Александр* - 25.06.2019 16:17:30
 
Удалите макрос из модуля ЭтаКнига и вставьте в модуль нужного листа
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A4:BM4")) Is Nothing Then Exit Sub
With Application
.EnableEvents = 0: .Undo: .EnableEvents = 1
End With
End Sub
Согласие есть продукт при полном непротивлении сторон
 
Спасибо)
 
Макрос не срабатывает когда копируешь значение в этот диапазон (ctrl+C - Ctrl+V)
Когда просто вводишь значение - все хорошо, а вот при копировании - пропускает (
 
Цитата
Александр* написал: Макрос не срабатывает когда копируешь значение в этот диапазон (ctrl+C - Ctrl+V)
Срабатывает
Согласие есть продукт при полном непротивлении сторон
 
Когда в две и более ячейки копируешь - не срабатывает
один на один -  все ок
 
Цитата
Александр* написал: Когда в две и более ячейки копируешь - не срабатывает
И так срабатывает
Согласие есть продукт при полном непротивлении сторон
 
Это наверное потому что это у мене заголовок смарт таблицы. Код можна как-то исправить под смарт таблицу?
Так действительно все хорошо работает.
 
?
Код
 Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.ListObjects(1).HeaderRowRange) Is Nothing Then
    With Application
    .EnableEvents = 0: .Undo: .EnableEvents = 1
    End With
End If
End Sub
Согласие есть продукт при полном непротивлении сторон
 
Спасибо) Идеально
Страницы: 1
Наверх