У меня есть вопрос относительно экземпляров пользовательских форм.
Когда пользовательская форма создается с помощью объекта в модуле (например, set frm = new Userform2), я могу скрыть ее и восстановить с помощью метода show, даже когдаподпрограмма выполняется до конца?
Допустим,
- создание пользовательской формы с помощью sub1
- ввод значений в пользовательскую форму
- скрытие пользовательской формыс sub2
- восстановить пользовательскую форму со всеми значениями по sub3 с помощью метода show
Я получил очень странное поведение при тестировании кода с методами show и hide на уровне модуля или кода Userform, но что янаконец-то пришло время работать с тем, чтобы использовать глобальную переменную и следующий код в стандартном модуле:
Global frm As UserForm2
Option Explicit
Sub sub1()
Set frm = New UserForm2
With frm
.Show vbModeless
End With
End Sub
Sub sub2()
With frm
.Hide
End With
End Sub
Sub sub3()
With frm
.Show vbModeless
End With
End Sub
Часто говорят, что глобальных переменных следует избегать.Это вообще возможно здесь?Я что-то пропустил?