打开按钮以根据组合框选择打开表单

Opening Button to open form based on combo box selection

我目前有会员的 MS Access 数据库。

我有一个带有组合框的表单,其中只填充了成员的名字和姓氏。 (暂时使用测试数据库)

我苦苦挣扎的是如何创建一个按钮来打开我创建的另一个表单,但使用下拉框中的选择来填充新打开的表单中的字段。

当从下拉框中选择一个用户时,单击打开,我希望它打开填充有他们的详细信息的配置文件表单。

图片和访问文件可以在我的ftp服务器上找到:

ftp://ftp.legends-gym.co.uk 用户:ftpuser@legends-gym.co.uk 通过:ftp用户

此致

我无法在工作中访问 ftp 站点,因此无法看到您到目前为止的内容,但是,您想要在此处查看的关键位是:

  1. 向表单添加一个按钮,并在单击事件中添加一个以打开您的个人资料表单。类似于 docmd.openform "frmProfile", acNormal
  2. 您需要一些东西来将您在组合框中 select 编辑的成员传递到个人资料表单。一种方法可能是使用 OpenArgs,所以看看那个
  3. 然后您可以使用 OpenArgs 中传递的变量 select 您想要填写个人资料表单的数据。

编辑...

好的,我已经查看了文件。以下是解决问题所需要做的事情(以及一些不会引起问题但会改善外观的额外位)。

  1. 在主页表单和成员搜索表单的格式中,将 Navigation ButtonsRecord Selector 设置为 false。 - 这会删除 "single" 表单中不必要的元素,您不是在查看记录。
  2. 在成员搜索表单中,删除对成员的绑定 table。 - 您不需要绑定此表单,因为组合的记录源正在单独提取所需的数据。如果您在更改之前查看您的表格,您会发现您拥有 10 条记录中的 1 条...
  3. 此外,删除过滤条件并将加载时过滤设置为否 - 您过滤了错误的表单。
  4. 在组合框中,删除更新后事件。 - 我不确定那是想做什么,但完全没有必要。
  5. 在命令按钮上,添加具有以下代码的 onclick 事件 DoCmd.OpenForm "Profile", acNormal, , "ID = " & Me.Combo361 & ""
  6. 保存一切并享受。 :)

你的过滤器并没有错,但它实际上是打开另一个表单时的 WHERE 子句 - 抱歉,我的误导。您正在做的是过滤原始表单 - 即成员搜索表单。此外,您不需要在 ID 周围加上 ' 引号,它是数字而不是字符串。

如果您遇到问题,我可能会在某个地方托管此固定版本供您下载。