Чтобы повторно инициализировать дочерний выпадающий список (выпадающий список 2 в зависимости от выбора, сделанного в раскрывающемся списке 1), у меня есть следующий код в "ThisWorkbook".
Предполагается очистить содержимое дочернего раскрывающегося списка, если ячейка из определенного диапазона (где находится раскрывающийся список 1) изменяется. Он отлично работает на листе, где существует это имя диапазона (имя диапазона "RSTcabFINISHING").
ВОПРОС
на любом другом листе (= листе, где это имя диапазона не существует) этот код очищает содержимое любых трех ячеек прямо в ячейке, в которой я изменяю содержимое.
Решение было бы поместить код только на лист, который нуждается в этом, я полагаю. Но (скажите мне, если я ошибаюсь), выглядит более разумным поместить код в "ThisWorkbook", так как лист с диапазоном, описанным выше, подлежит умножению (= copy) ...
не уверен, что все это имеет смысл ... Я предполагаю, что вопрос заключается в том, «что я должен сделать, чтобы избежать очистки этого контента где-то еще, чем я хочу?».
Спасибо!
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'Initialize cabinet finishing board
On Error Resume Next
If Not Intersect(Target, Range("RSTcabFINISHING")) Is Nothing Then
Application.EnableEvents = False
Target.Offset(0, 1).Resize(, 3).ClearContents
End If
Exit Sub
End Sub