可以使用 Access 中的 OpenForm 宏操作在 窗体视图 、 设计视图 、打印预览或 数据表视图 中打开 窗体 。 可以为窗体选择数据输入和窗口模式,并限制窗体显示的记录。
注意: OpenForm 宏操作在 Access Web 应用中不可用。
设置
OpenForm 操作具有以下参数。
操作参数 |
说明 |
窗体名称 |
要打开的窗体的名称。 “ 窗体名称 ”框显示当前数据库中所有窗体的下拉列表。 此参数为必选项。 如果在 类库数据库 中运行包含 OpenForm 操作的宏,Access 首先在库数据库中查找具有此名称的表单,然后在当前数据库中查找。 |
查看 |
窗体将在其中打开的视图。 在“视图”框中选择“窗体”、“设计”、“打印预览”、“数据表”、“数据透视表”或“数据透视图”。 默认值为 Form。 注意: 从 Access 2013 开始,已从 Access 中删除数据透视表和数据透视图功能。 注意: View 参数设置替代窗体的 DefaultView 和 ViewsAllowed 属性的设置。 例如,如果窗体的 ViewsAllowed 属性设置为 “数据表”,则仍可以使用 OpenForm 操作在窗体视图中打开窗体。 |
筛选器名称 |
限制窗体记录或对其进行排序的 筛选器 。 可以输入已保存为查询的现有 查询 或筛选器的名称。 但是,查询必须包含要打开的窗体中的所有字段,或者将其 OutputAllFields 属性设置为 “是”。 |
Where 条件 |
有效的 SQL WHERE 子句 (没有 WHERE) 或 表达式 一词,Access 使用它从窗体的基础表或查询中选择记录。 如果选择具有 Filter Name 参数的筛选器,Access 会将此 WHERE 子句应用于筛选器的结果。 若要打开窗体并将其记录限制为另一个窗体上控件的值指定的记录,请使用以下表达式: [ fieldname ] = Forms![ formname ]![ 其他窗体上的 controlname ] 将 fieldname 替换为要打开的窗体的基础表或查询中的字段的名称。 将其他窗体上的formname 和 controlname 替换为另一个窗体的名称,以及包含希望第一个窗体中的记录匹配的值的另一个窗体上的控件。 注意: Where Condition 参数的最大长度为 255 个字符。 如果需要输入比此更长的复杂 SQL WHERE 子句,请改用 Visual Basic for Applications (VBA) 模块中的 DoCmd 对象的 OpenForm 方法。 可以在 VBA 中输入最多 32,768 个字符的 SQL WHERE 子句语句。 |
数据模式 |
表单的数据输入模式。 这仅适用于在窗体视图或数据表视图中打开的窗体。 选择“ 添加 ” (用户可以添加新记录但无法编辑现有记录) 、 编辑 (用户可以编辑现有记录并添加新记录) ,或“ 只读 ” (用户只能查看记录) 。 注意
|
窗口模式 |
窗体打开的窗口模式。 选择“ 普通 (窗体在按其属性) 设置的模式打开, 隐藏 (窗体隐藏 ) ,图标 (窗体打开最小化为屏幕) 底部的小标题栏,或 对话框 (窗体的 模式 和 PopUp 属性设置为 是) 。 默认值为 Normal。 注意: 使用选项卡式文档时,某些 窗口模式 参数设置不适用。 切换到重叠窗口:
|
备注
此宏操作类似于双击导航窗格中的窗体,或右键单击导航窗格中的窗体,然后选择视图。
窗体可以 模式 (必须先关闭或隐藏窗体,然后用户才能执行任何其他操作,) 或无模式 (用户可以在窗体打开时移动到其他窗口) 。 它也可以是 弹出式表单 (窗体,用于收集或显示保留在所有其他 Access 窗口) 之上的信息。 在设计窗体时设置 模式 和 PopUp 属性。 如果使用 Normal 作为 窗口模式 参数,窗体将在这些属性设置指定的模式下打开。 如果使用 Dialog 作为 窗口模式 参数,则这些属性都设置为 “是”。 在显示或还原窗体时,以隐藏或图标形式打开的窗体将返回到由其属性设置指定的模式。
打开窗口 模式 参数设置为 Dialog 的窗体时,Access 会暂停宏,直到窗体关闭或隐藏。 通过使用 SetValue 操作,可以通过将窗体的 Visible 属性设置为“否”来隐藏窗体。
应用的筛选器和 WHERE 条件将成为窗体的 Filter 属性的设置。
提示: 可以在导航窗格中选择窗体并将其拖动到宏窗口中。 这会自动创建一个 OpenForm 操作,用于在窗体视图中打开所选窗体。
示例
使用宏在打开的窗体上设置控件的值
以下宏从“供应商”窗体上的按钮打开“产品”窗体。 它显示了 Echo、 OpenForm、 SetValue 和 GoToControl 操作的用法。 SetValue 操作将“产品”窗体上的“供应商 ID”控件设置为“供应商”窗体上的当前供应商。 然后 ,GoToControl 操作将焦点移动到“类别 ID”字段,可在其中开始输入新产品的数据。 此宏应附加到“供应商”窗体上的“添加产品”按钮。
采取行动的 |
参数:设置 |
评论 |
Echo |
回显打开: 否 |
在宏运行时停止屏幕更新。 |
OpenForm |
表单名称:产品 视图: 窗体 数据模式: 添加 窗口模式: 普通 |
打开“产品”窗体。 |
SetValue |
项目:[Forms]![产品]![SupplierID] 表达式:SupplierID |
在“供应商”窗体上将“供应商 ID”控件设置为当前供应商。 |
GoToControl |
控件名称:CategoryID |
转到“类别 ID”控件。 |