Возможно ли, чтобы пользовательская форма появлялась, только когда открыт определенный Лист Excel?

Сегодня один человек задал вопрос на канале YouTube:"Подскажите, пожалуйста, возможно ли сделать так, чтобы пользовательская форма открывалась, только когда открыт определенный Лист Excel???"

КОНЕЧНО ВОЗМОЖНО!

Приведу реализацию кода для данной задачки.

Ведь здесь всего лишь нужно сравнить активен ли необходимый нам лист или не активен, и если нужный нам лист активен, тогда и показываем форму.

'//Процедура выводит сообщение, только если...
'//...активным листом является лист "МойЛист"
Sub TestProc()
    Dim mySheet As Worksheet '//эта переменная будет содержать ссылку на наш лист(объект)
    Set mySheet = ThisWorkbook.Worksheets("МойЛист") '//инициализируем переменную ссылкой на наш объект-лист
    If (mySheet Is ThisWorkbook.ActiveSheet) Then MsgBox "Hello World" '//если наш лист является активным листом, тогда показываем форму
End Sub

No Comments

Post Reply