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

Вход

Регистрация

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

 

= Мир MS Excel/Объединить два Worksheet_Change в один! - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Объединить два Worksheet_Change в один! (Формулы/Formulas)
Объединить два Worksheet_Change в один!
User0337 Дата: Пятница, 13.05.2022, 10:23 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 20% ±

Всем доброго времени суток! Подскажите пожалуйста как объединить два два Worksheet_Change в один! Первый отвечает за защиту ячейку после ввода, второй учет времени когда был ввод данных в ячейку.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xRg As Range
On Error Resume Next
Set xRg = Intersect(Range("F5:H1048576"), Target)
If xRg Is Nothing Then Exit Sub
Target.Worksheet.Unprotect Password:="123"
If xRg.Value <> mStr Then xRg.Locked = True
Target.Worksheet.Protect Password:="123"
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 9 And Target.Row > 1 And Not IsEmpty(Target.Value) Then _
Target.Offset(0, -1).Value = Now

End Sub
[/vba]
К сообщению приложен файл: 7483031.xlsm(18.9 Kb)


Сообщение отредактировал Serge_007 - Пятница, 13.05.2022, 11:05
 
Ответить
СообщениеВсем доброго времени суток! Подскажите пожалуйста как объединить два два Worksheet_Change в один! Первый отвечает за защиту ячейку после ввода, второй учет времени когда был ввод данных в ячейку.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xRg As Range
On Error Resume Next
Set xRg = Intersect(Range("F5:H1048576"), Target)
If xRg Is Nothing Then Exit Sub
Target.Worksheet.Unprotect Password:="123"
If xRg.Value <> mStr Then xRg.Locked = True
Target.Worksheet.Protect Password:="123"
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 9 And Target.Row > 1 And Not IsEmpty(Target.Value) Then _
Target.Offset(0, -1).Value = Now

End Sub
[/vba]

Автор - User0337
Дата добавления - 13.05.2022 в 10:23
NikitaDvorets Дата: Пятница, 13.05.2022, 12:12 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 315
Репутация: 60 ±
Замечаний: 0% ±

Excel 2019
User0337, добрый день.

Вариант изменений - в прилагаемом файле.
К сообщению приложен файл: TEST-173__2_wor.xlsm(23.6 Kb)
 
Ответить
СообщениеUser0337, добрый день.

Вариант изменений - в прилагаемом файле.

Автор - NikitaDvorets
Дата добавления - 13.05.2022 в 12:12
User0337 Дата: Пятница, 13.05.2022, 13:16 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 20% ±

NikitaDvorets, Спасибо большое! Выручили
 
Ответить
СообщениеNikitaDvorets, Спасибо большое! Выручили

Автор - User0337
Дата добавления - 13.05.2022 в 13:16
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Объединить два Worksheet_Change в один! (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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