解决方法:
遍历当前打开的所有窗体,并读取其PopUp (弹出)属性:如果为True,就关闭。
主要代码:
'将下面代码复制到任意模块中 然后直接写closePopUpForm即可调用
'例如:
'Private Sub btnClose_Click()
' closePopUpForm
'End Sub
Function closePopUpForm()
Dim allFrmCount As Integer '记录当前打开的所有窗体数量 比实际值小1
Dim curFrmCount As Integer '记录当前遍历的是第几个窗体 比实际值小1
allFrmCount = Forms.Count - 1
For curFrmCount = 0 To allFrmCount '遍历所有打开的窗体
If curFrmCount = allFrmCount + 1 Then '最后一个窗体遍历完时候 退出for循环
Exit For
End If
If Forms(curFrmCount).PopUp = True Then '通过读取窗体的PopUp属性 判断当前窗体是不是弹出
DoCmd.Close acForm, Forms(curFrmCount).Name
allFrmCount = allFrmCount - 1
curFrmCount = curFrmCount - 1
End If
Next
End Function
图 片:
示 例:
点击下载此附件