Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/макрос для защиты ячеек от изменения - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос для защиты ячеек от изменения (Макросы Sub)
макрос для защиты ячеек от изменения
Timsan Дата: Понедельник, 11.11.2013, 16:45 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Здравствуйте.имеится макрос для защиты ячеек от изменения
Как можно сделать его компактней ???
Нужно защитить Range A1:S44

Вот сам макрос
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$C$21" Or Target.Address = "$D$21"  
Or Target.Address = "$E$21" Or Target.Address = "$F$21"  
Or Target.Address = "$G$21" Or Target.Address = "$H$21"  
Or Target.Address = "$D$21" Or Target.Address = "$E$21"  
Or Target.Address = "$F$21" Or Target.Address = "$G$21"  
Or Target.Address = "$G$21" Or Target.Address = "$H$21" Then
     Application.EnableEvents = False
     Application.Undo
     Application.EnableEvents = True
End If
End Sub
[/vba]
 
Ответить
СообщениеЗдравствуйте.имеится макрос для защиты ячеек от изменения
Как можно сделать его компактней ???
Нужно защитить Range A1:S44

Вот сам макрос
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$C$21" Or Target.Address = "$D$21"  
Or Target.Address = "$E$21" Or Target.Address = "$F$21"  
Or Target.Address = "$G$21" Or Target.Address = "$H$21"  
Or Target.Address = "$D$21" Or Target.Address = "$E$21"  
Or Target.Address = "$F$21" Or Target.Address = "$G$21"  
Or Target.Address = "$G$21" Or Target.Address = "$H$21" Then
     Application.EnableEvents = False
     Application.Undo
     Application.EnableEvents = True
End If
End Sub
[/vba]

Автор - Timsan
Дата добавления - 11.11.2013 в 16:45
KuklP Дата: Понедельник, 11.11.2013, 17:05 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Гы), так достаточно компактно?
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, [C21:H21]) Is Nothing Then _
       With Application: .EnableEvents = 0: .Undo: .EnableEvents = -1: End With
End Sub
[/vba] :D


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Понедельник, 11.11.2013, 17:13
 
Ответить
СообщениеГы), так достаточно компактно?
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, [C21:H21]) Is Nothing Then _
       With Application: .EnableEvents = 0: .Undo: .EnableEvents = -1: End With
End Sub
[/vba] :D

Автор - KuklP
Дата добавления - 11.11.2013 в 17:05
Timsan Дата: Понедельник, 11.11.2013, 18:15 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
спасибо тебе огромное все работает отлично
 
Ответить
Сообщениеспасибо тебе огромное все работает отлично

Автор - Timsan
Дата добавления - 11.11.2013 в 18:15
KuklP Дата: Понедельник, 11.11.2013, 18:17 | Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Не припомню, чтоб мы пили на брудершафт :(


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеНе припомню, чтоб мы пили на брудершафт :(

Автор - KuklP
Дата добавления - 11.11.2013 в 18:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос для защиты ячеек от изменения (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!