Я пытаюсь добавить некоторые вещи в мой существующий код для дальнейшей автоматизации вещей. У меня есть userform1 с некоторым кодом. Если во время выполнения кода происходит определенное событие, мне нужно открыть новую пользовательскую форму2, где пользователь должен использовать некоторые флажки, чтобы изменить некоторые значения на листе, используемом пользовательской формой1. после того, как пользователь закончил, я хочу, чтобы он закрыл userform2 и код продолжил работу (userform1 приостановлен / скрыт?). Но я не могу заставить userform2 открыться. Он показывает ошибку времени выполнения 13 с выделением
userform2.show
Я уже пытался выставить обе пользовательские формы как немодальные. Я пробовал
me.hide
перед открытием userform2.
Есть ли способ открыть userform2 и продолжить код после его закрытия или мне нужно найти другой способ?
Код для вызова userform1:
Button on Excel Sheet_click()
with combobox1
.additem XX
.
.
end with
with combobox2
.additem XX
.
.
end with
with combobox2
.additem XX
.
.
end with
userform1.show
end sub
codeвызвать userform2 (или нет) частично:
if sheet1.range("a1") = 1 then
do this
elseif sheet1.range("a1") > 1 then
userform1.hide
userform2.show 'highlighted when runtime error 13 pops up
end if
Инициализировать событие userform2:
Private Sub UserForm2_Initialize()
Dim DBB As Worksheet
Set DBB = ThisWorkbook.Sheets("BB")
With userform2
.labelfield1.Caption = DBB.Range("D5")
.
.
.labelfield2.Caption = DBB.Range("D5") - DBB.Range("D10")
.
.
End With
End Sub