首页 > 解决方案 > 如何将多行中的值连接到一个文本框(或一个字符串)中

问题描述

我的问题很简单,我是 MS Access 的新手。我想将多行中的数据放入一个文本框/标签中,并向其中添加一些字符串。我只是无法让它工作。

我有一张桌子,上面有一些笔记本电脑及其参数,如 CPU、CPU 制造商、内核数量等,以及所有使用过的 CPU、所有制造商等的表格。

然后我有一份关于所有笔记本电脑及其规格的报告(看起来像这样)。目前,每列都有自己的文本框,并且每个自定义字符串都在自己的标签中,因为我还没有找到更好的解决方案。

问题是,这种方法看起来很糟糕。我想将每个“组件”放在一行中,在一个文本框/标签中,所以它们都很好地对齐。

我试过使用查询,但它们要么显示#error、语法错误,要么显示一些像 AMD Core i7 这样的废话。我一直将它们放入“控制源”:

[0_PRODUKTY]![Počet jader CPU]+"core processor "+[0_PRODUKTY]![Značka procesoru]+" "+[0_PRODUKTY]![Procesor]

Počet jamr CPU = CPU 内核数
Značka procesoru = CPU 制造商

标签: ms-access

解决方案


&首先,在 VBA 中连接数据时始终使用 &运算符:&运算符将始终将数据解释为字符串(在可能的情况下),而加法+运算符将对数值数据求和,即使此类数据以字符串形式呈现。


由于您正在从各个字段编译描述,我建议使用带有控制源的文本框:

=[0_PRODUKTY]![Počet jader CPU] & "-core processor " & [0_PRODUKTY]![Značka procesoru] & " " & [0_PRODUKTY]![Procesor]

您还可以使用该函数强制数字字段的字符串转换,该CStr函数将变量参数强制转换为字符串:

=CStr([Počet jader CPU]) & "-core processor " & [0_PRODUKTY]![Značka procesoru] & " " & [0_PRODUKTY]![Procesor]

请注意,您可能还需要考虑空字段。


推荐阅读