【发布时间】:2012-06-25 01:13:34
【问题描述】:
我有一个包含 4 个子报告/表单的访问报告。这些子报告中的每一个都旨在显示从特定病房入院、转入、转出和出院的患者。我有 4 个不同的查询来执行任务。当我单独运行查询时,它们工作正常。查询提示用户输入开始和结束日期并显示结果。
问题是,当我将这些查询中的每一个附加到每个子报表并运行报表时,它会询问开始日期 4 次,这在逻辑上是正确的,因为它分别运行 4 个子报表。
我无法将所有查询合并到一个查询中,因为即使从 1 个表中提取数据,条件也不同。我还受限于创建表单和按钮以根据用户提供的开始日期提取报告,因为我需要直接运行报告。
有什么方法可以让我只输入一次日期就可以在所有 4 个子报表上显示数据。
我使用 Ms Access 2003
任何帮助将不胜感激。 谢谢 问候。
【问题讨论】:
-
我不知道为什么您不能创建一个包含两个文本框的开始和结束日期以及一个打开报告的按钮的表单。查询已经提示用户输入,这正是创建表单的目的。在每个查询中,引用表单中使用的字段。在 Forms!yourForm!txtStart AND Forms!yourForm!txtEnd 之间这样用户只需输入一次值。
-
我没有也不能使用访问表单,因为这不是一个独立的访问数据库。它通过 ODBC 连接到 SQL 服务器。因此我需要直接运行访问报告。 ,谢谢。
-
首先,数据库后端是不是SQL Server没关系。这两个答案仍然有效。就像 Access 报表正在读取数据一样,Access 表单也是如此。在@Jeff 的回答中,它甚至不必读取数据,只需使用未绑定的文本框。其次,我的回答跳过了表单并使用 VBA 中的 InputBox 函数来询问用户在报告的打开事件期间的日期。然后,您可以在每个查询中使用答案设置参数,然后再询问您的用户。
-
您是否直接运行报告?或通过按钮或表单上的某种形式?如果我双击并直接运行访问报告,您提到的表单会弹出吗?
-
我需要将访问报告附加到专有应用程序。该应用程序直接运行访问报告,类似于我们在访问中双击并运行它的方式。因此,除非在运行报告时弹出表单,否则我认为它不会真正有用。谢谢。
标签: ms-access ms-access-2007 ms-access-2003