【问题标题】:MS Access - Concatenate values from related recordsMS Access - 连接相关记录中的值
【发布时间】:2015-11-23 09:36:26
【问题描述】:

我正在尝试连接我的搜索结果。我发现one article 对此进行了描述,但无法使其正常工作。

我正在尝试执行以下操作: - 我创建了两个表(tblBustblJoin)。我关联了表格(1:M)。 - 我创建了一个带有几个字段的搜索表单来搜索数据。 - 我还创建了一个查询。

除了我尝试连接我的数据之外,大部分情况下一切正常。

这是我正在尝试做的一个示例:

Stop Number     -     Route Number
        110     -     111
        110     -     222
        115     -     111
        115     -     222

我想这样组合路线编号:

Stop Number     -     Route Number
        110     -     111, 222
        115     -     222, 222

两个字段都是整数字段。

【问题讨论】:

    标签: ms-access vba concatenation ms-access-2010 ms-access-data-macro


    【解决方案1】:

    您需要使用 VBA 记录集来创建以逗号分隔的数字列表。

    VBA 会将要显示的数据存储在临时表中。

    您的 VBA 将基于包含您的示例数据的 SQL 查询打开一个记录集。代码将遍历数据中的每一行,检测第一列中的数字何时更改,将字符串变量重置为空字符串。当它遍历每一行时,它将添加到逗号分隔的字符串中。

    或者,您可以编写一个函数来构建由查询调用的单个逗号分隔字符串。调用 quiet 将仅列出第一列中的唯一值。该函数可能比 VBA 方法慢。您使用哪种方法取决于表中的行数和速度。

    【讨论】:

    • 谢谢哈维,我希望有一个示例代码。我真的不明白如何传入数据并将数据返回给查询。我确实理解循环部分,但这并不能帮助我让它工作。
    • Google 使用动态 SQL 或使用参数在 VBA 中打开记录集。我发现动态 SQL 更简单、更易于使用。有很多关于他的事情的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-30
    • 2021-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    相关资源
    最近更新 更多