DoCmd.OpenForm 方法 (Access)
在 Visual Basic 中,OpenForm 方法执行 OpenForm 操作。
语法
expression.OpenForm(FormName、View、FilterName、WhereCondition、DataMode、WindowMode、OpenArgs)
expression:表示 DoCmd 对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
FormName | 必需 | Variant | 字符串表达式,表示当前数据库中窗体的有效名称。 如果在类库数据库中执行包含 OpenForm 方法的 Visual Basic 代码,Access 会先在类库数据库中查找具有此名称的窗体,再在当前数据库中查找。 |
View | 可选 | AcFormView | AcFormView常量,指定将在其中打开窗体的视图。 默认值为 acNormal。 |
FilterName | 可选 | Variant | 字符串表达式,表示当前数据库中的查询的有效名称。 |
WhereCondition | 可选 | Variant | 字符串表达式,不包含 WHERE 关键字的有效 SQL WHERE 子句。 |
DataMode | Optional | AcFormOpenDataMode | AcFormOpenDataMode常量,指定窗体的数据输入模式。 这仅适用于在窗体视图或数据表视图中打开的窗体。 默认值为 acFormPropertySettings。 |
WindowMode | 可选 | AcWindowMode | AcWindowMode常量,指定打开窗体时采用的窗口模式。 默认值为 acWindowNormal。 |
OpenArgs | 可选 | Variant | 字符串表达式。 此表达式用于设置窗体的 OpenArgs 属性。 此设置还可供窗体模块中的代码(如 Open 事件过程)使用。 还可以在宏和表达式中引用 OpenArgs 属性。 例如,假设您打开的窗体是包含客户端的连续窗体列表。 如果希望在窗体打开时将焦点移至特定客户端记录,可以使用 OpenArgs 参数指定客户端名称,再使用 FindRecord 方法将焦点移至具有指定名称的客户端记录。 |
注解
使用 OpenForm 方法,在窗体视图、窗体设计视图、打印预览或数据表视图中打开窗体。 可以选择窗体的数据输入模式和窗口模式,并限制窗体显示的记录。
WhereCondition 参数的最大长度为 32,768 个字符(而在“宏”窗口中,WhereCondition 操作参数的最大长度为 256 个字符)。
示例
下面的示例在窗体视图中打开雇员窗体,并只显示 LastName 字段为 King 的记录。 可以编辑所显示的记录,也可以添加新记录。
DoCmd.OpenForm "Employees", , ,"LastName = 'King'"
下面的示例在窗体视图中打开“frmMainEmployees”窗体,并仅显示应用于“cboDept”组合框中选定部门的记录。 可以编辑所显示的记录,也可以添加新记录。
Private Sub cmdFilter_Click()
DoCmd.OpenForm "frmMainEmployees", , , "DepartmentID=" & cboDept.Value
End Sub
下面的示例演示如何使用 OpenForm方法的 WhereCondition 参数筛选在已打开的窗体上显示的记录。
Private Sub cmdShowOrders_Click()
If Not Me.NewRecord Then
DoCmd.OpenForm "frmOrder", _
WhereCondition:="CustomerID=" & Me.txtCustomerID
End If
End Sub
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。