У меня есть рабочий лист, который должен делать несколько вещей в зависимости от того, какие ячейки изменены. Код отлично работает для меня, но когда я отправляю документ кому-то другому, код внутри листа вообще не активируется. Я проверил, поместив разрывы вверху кода, и он просто не вызывает код на новом компьютере.
Если я нажимаю кнопку ниже (создает новый лист) и затем возвращаюсь, она начинает работать. Если пользователь заставляет его работать (используя метод кнопки выше), сохраняет документ и возвращается обратно, он все еще работает. Проблема заключается в том, что код на листе сразу начинает работать.
Вещи, которые я пробовал:
1. Я добавил вкладку «Настройка / Инструкции», для которой требовались флажок и нажатие кнопки, чтобы отобразить вкладку «Настройка». Не решить эту проблему.
2. Я спрятал все на вкладке настройки, за исключением одной кнопки «Пуск», которая отображает все объекты и текст в форме. Не работал.
Часть кода, находящегося на вкладке «Настройка»:
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect
If Not Intersect(Target, Range("D2")) Is Nothing Then
Call UpdateName
End If
Опять же, код отлично работает для меня, и если пользователь, столкнувшийся с этой проблемой, использует один из более крупных макросов, это решит проблему.