Когда загружается немодальная пользовательская форма, код в ней (за исключением подпрограммы Userform_Initialize) иногда не выполняется, и основной код, который вызывает пользовательскую форму, продолжает работать.это было в последнем обновлении моей программы, которое, к сожалению, было повреждено.
Sub start() 'shortened drastically, but accurate
'....
If UBound(rs.GetRows(1000000), 2) + 1 < 6 Then
.Close SaveChanges:=False
ThisWorkbook.Sheets("Start").Range("DA1").Value = "1"
ThisWorkbook.Sheets("Start").Range("DA2").Value = MachineNr
UserForm1.Show vbModeless
GoTo ExSub
End If
'...
ExSub:
End Sub
И в модуле пользовательской формы:
Private Sub UserForm_Initialize()
Dim wb As Workbook
If ThisWorkbook.Sheets("Start").Bijwerken = "ja" Then
Me.CommandButton2.Caption = "Cancel"
Me.Label1.Caption = "Select a file to update"
bestand = ""
With Me.ComboBox1
For Each wb In Application.Workbooks
If Not wb.Name = ThisWorkbook.Name Then
For Each sht In wb.Sheets
If sht.Name = "AssetTypeTask" Then
.AddItem wb.Name
Exit For
End If
Next sht
End If
Next wb
End With
Else
bestand = ""
With Me.ComboBox1
For Each wb In Application.Workbooks
If Not wb.Name = ThisWorkbook.Name Then
.AddItem wb.Name
End If
Next wb
End With
End If
End Sub
Код проходит через подпрограмму Userform_Initialize
без проблем,но пользовательская форма не появляется в передней части экрана, и код продолжается на GoTo ExSub
, что затем завершает выполнение кода.Пользовательская форма остается открытой, но закрывается, когда я нажимаю на ней одну из командных кнопок.