在Access中,我想在此表单上更新文本框的控件源之前打开一个关闭的表单。
我有以下VB代码。但是一旦窗体弹出,它就会卡在更新controlsource上,从而产生运行时错误438。打开此窗体后,我尝试了窗体上的另一个函数来刷新控件,并且它也被卡住了。
我尝试在此表单打开时对其进行操作,并且进展顺利。因此,我相信VB认为打开此表单后仍将其关闭。有谁知道如何打开一个封闭的表单并在单个sub
中对其进行操作?谢谢
...
DoCmd.OpenForm "frmFormName", , , , , acDialog
Forms.frmFormName.Text50.ControlSource = "='value'"
...
答案 0 :(得分:3)
DoCmd.OpenForm "frmFormName", , , , , acDialog
打开表格模式。这意味着代码执行将暂停,直到关闭表单(或将其设置为Visible=False
)为止。
因此,当表单已经关闭时,将执行下一行。
您可以通过OpenArgs
传递参数,并在Form_Open
中设置控制源,而不是从外部。