我在用户窗体上有一个未更新的组合框,除非我放置一个断点并单步执行代码,或者弹出一个MsgBox
等。
'MsgBox "", vbInformation
Group_Form.CrossVariable_Cbox = groupVar
Debug.Print "After updating Group_Form.CrossVariable_Cbox = " & _
groupVar & ": " & (Group_Form.CrossVariable_Cbox = groupVar)
我确认在此之后没有触发事件。显示表单,当我显示一个 msgbox 时,或者如果我使用调试器单vbModeless
步执行代码,则更新正确。F8
CrossVariable_Cbox.Value
我的Debug.Print
声明确认值匹配,但是,如果我允许它不间断地运行(没有 msgbox,没有调试模式),表单显示没有任何值,即使Print
告诉我它已正确更新。
这当然会导致来自 MS Forms 的“无效属性值”通知。
有什么建议么?
在下面的镜头中,该值应该是“insurer”并且 listindex 为 372 或类似的值。两者都确认我是否调试它,但是当我允许它不间断运行时,该框显示 empty/listindex = -1,并导致错误...