判断窗体中是否有子窗体的模块代码
来源:www.accessoft.com 点击数:2744 评论数:3 评论 | 收藏 | 复制
时 间:2012-01-11 09:35:48
作 者:叶海峰 ID:31 城市:广州
摘 要:判断窗体中是否有子窗体的模块代码
正 文:
Sub FrmHasChildForm()
Dim ctrl As Control
Dim frm As Object
Dim flag As Boolean
For Each frm In CurrentProject.AllForms
flag = False
DoCmd.OpenForm frm.Name, acNormal, , , , acHidden
For Each ctrl In Forms(frm.Name).Controls
If ctrl.ControlType = 112 Then
flag = True
Debug.Print frm.Name, ctrl.Name
Exit For
End If
Next
MsgBox IIf(flag = True, frm.Name & "包含子窗体", frm.Name & "不包含子窗体")
DoCmd.Close acForm, frm.Name
Next
End Sub
下面是我改善的代码
Public Function CREATE_REPORT()
Dim Frm As Form
Dim FRMCHECK As Object
For Each FRMCHECK In CurrentProject.AllForms
If FRMCHECK.Name = "F_新建的窗体" Then
MsgBox "FROM F_新建的窗体 IS EXISTS"
DoCmd.DeleteObject acForm, "F_新建的窗体"
End If
Next
Set Frm = CreateForm
DoCmd.Save , "F_新建的窗体"
DoCmd.Close acForm, "F_新建的窗体"
RefreshDatabaseWindow
End Function