将表单链接到Access

时间:2016-04-08 19:53:36

标签: ms-access ms-access-2013

我在Access中创建链接子表单,其中表单和子表单来自同一个SQL表。源表看起来像这样:

Company   Product
-----------------
CompanyA  Product1
CompanyA  Product2
CompanyB  Product1
CompanyB  Product2

目标是展示最高水平"表单上的列表框中的数据(CompanyA,CompanyB等),并显示子表单中当前显示的公司的完整产品列表。我尝试将它们链接到公司并获得以下错误。

You are trying to link fields with incompatible data types.

表单和子表单链接到同一个表,因此我不明白为什么它们会不兼容。真正令人困惑的是它只在这一张表中出现。我使用与问题表具有相同数据类型的测试表创建了一个新表单,并且它工作正常。我复制了"公司"列出到一个新表,它给了我同样的错误。

这是表本身的问题吗? Access是否需要将行分开?

2 个答案:

答案 0 :(得分:1)

我从头开始重新启动表单并且工作正常。不需要更改表或列数据类型。

表单和子表单必须在Access中定义的主键上链接。链接任何其他列将显示incompatible data type错误。

答案 1 :(得分:0)

没有足够的细节来回答

这是另一种解决方案:

不是使用Access父/子链接功能,而是“手头”。

首先删除表单/子表单上的父/子链接

然后使用此VBA代码在列表框中添加单击事件:

Form_subformname.recordsource = "SELECT Product FROM tablename WHERE COmpany = '" &  listboxname.value & "'"