Access 2003完整教程:通过程序同步两个窗体的示例

当在“供应商”窗体上的供应商记录之间移动时,可能需要查看“产品列表”窗体上该供应商所供应的产品。可以用宏或Microsoft Visual Basic代码实现这一点。

使用宏

通过在宏中执行 OpenForm操作响应“供应商”窗体的Current事件,可实现这一点。使“产品列表”窗体显示基础表的“供应商ID”字段与“供应商”窗体的“供应商ID”字段匹配的记录。操作的“Where 条件”参数设置如下:

[供应商ID]=Forms![供应商]![供应商ID]

提示

如果并不总希望在“供应商”窗体的记录之间移动时显示“产品列表”窗体,请在宏中包含检查“产品列表”是否打开的条件表达式。

使用宏显示另一表中的记录

标注 1该条件表达式使用 IsLoaded 函数检查“产品列表”是否打开。IsLoaded 函数是“罗斯文”示例数据库中包含的示例函数过程,而不是内置的 Visual Basic 函数。

在创建如上的宏之后,应将“供应商”窗体的“成为当前”事件属性设置为该宏的名称。

使用 Visual Basic 代码

当在“供应商”窗体的记录中移动时,也许想要查看每个供应商在“产品”窗体中供应的产品。在“供应商”窗体的 Form_Current事件过程中,设置“产品”窗体的FilterOnFilter属性:

Private Sub Form_Current()
 ' Declare and set a variable to store the WHERE
 ' clause that describes the records you want to
 ' display.
 Dim strCond As String
 strCond = "SupplierID = Forms!Suppliers!SupplierID"
 ' Use the IsLoaded function from the Northwind
 ' sample database to check whether the Products
 ' form is open, then set the properties.
 If IsLoaded("Products") Then
 Forms![Products].FilterOn = True
 Forms![Products].Filter = strCond
 End If
End Sub

上页:Access 2003完整教程:避免在报表的第一页和最后一页打印页眉和页脚 下页:Access 2003完整教程:通过程序使两个窗体的记录同步

Access 2003完整教程:通过程序同步两个窗体的示例

Access 2003完整教程:通过程序使两个窗体的记录同步Access 2003完整教程:打开或关闭工具箱
Access 2003完整教程:打开 Access 数据库Access 2003完整教程:打开宏
Access 2003完整教程:临时打开窗体作为对话框Access 2003完整教程:打开数据库对象
Access 2003完整教程:打开“宏”窗口或“Visual Basic 编辑器”Access 2003完整教程:打开 Access 项目
Access 2003完整教程:防止或允许访问“Visual Basic 编辑器”或“立即”窗口Access 2003完整教程:避免用户中断从服务器检索记录 (ADP)
Access 2003完整教程:避免在查询中显示重复记录 (MDB)Access 2003完整教程:避免输入重复值 (MDB)
Access 2003完整教程:在窗体中启用或禁用筛选记录 (MDB)Access 2003完整教程:禁止或允许更改工具栏、按钮或命令
Access 2003完整教程:预览数据库对象Access 2003完整教程:显示报表中的报表条件
Access 2003完整教程:打印记录、数据表或数据库对象Access 2003完整教程:设置在独立页上打印每条记录、组或节的选项
Access 2003完整教程:将字符串的部分打印为分组标题Access 2003完整教程:打印数据库或数据库对象的设计 (MDB)
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号