【问题标题】:MS Access how can i pass my search criteria from top query to subquery?MS Access 如何将我的搜索条件从顶级查询传递到子查询?
【发布时间】:2016-02-08 21:15:23
【问题描述】:

我在一个基础数据表中有一个查询(假设我的搜索条件是正确的)返回大约。 950 条记录。

除了 3 个标准字段外,我还想要大约 10 个字段(项目仍处于开始阶段),每个字段都基于子查询,其中一些是普通的选择查询,一些是聚合查询。

据我所知,每个子查询必须返回 1 且仅返回一个值。 这个价值流派对于每个热门查询的记录都是独立的。

我现在的问题是,我不知道如何将搜索条件从顶部查询(简单选择查询)传递到我之前提到的 10 个字段中的子查询。

这是否可能,或者我的方法很复杂。有没有更简单的方法?

我有一个安装了 Office 2010 的 Windows 7 系统。

非常感谢您的帮助。

非常感谢。

PS 子查询基于与顶级查询相同的表。对不起,我忘了提。

【问题讨论】:

    标签: ms-access subquery


    【解决方案1】:

    您可以通过函数调用在事物之间传递参数以设置公共变量。这个 vba 必须在一个模块中,而不是在表单模块后面。我不经常使用这种方法,因为全局值在易失性内存中,我更喜欢将变量保存在特殊的数据表中。

    Public strGlobal As String
    Function Func_ReadGlobal() As String
        Func_ReadGlobal = strGlobal
    End Function
    Function Func_WriteGlobal() As String
        strGlobal = Func_WriteGlobal
    End Function
    

    【讨论】:

      【解决方案2】:

      在所有子查询中创建参数并将其用作搜索条件。同一列的参数名称应相同。现在,如果您在主查询中使用这些子查询,Access 将只询问每个参数名称一次,您无需将它们显式传递给子查询。

      【讨论】:

        【解决方案3】:

        谢谢你们。

        我没有想到 Globals 最明显的解决方案。只要我的老板给我时间继续这个项目,我就会尝试一下。

        @谢尔盖 我不能使用 Parameter(s) 方式,因为整个查询,包括。子查询应在 VBA 中完全独立运行,完全无需人工​​输入。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-02-03
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多