访问表单中的自动填充字段

时间:2017-02-06 20:44:12

标签: ms-access

情景
我正在设计一个数据库来数字化不同鱼类的许多碳记录,价格,销售数量和销售公司。

我有一个名为MainFishNames的表,其中一个名为CommonNames的字段(将在表单中输入的名称)和一个名为CategoryID的字段,以及另一个名为{{1的表},包含2个字段:CategoryCategory

目标
为了便于数据输入,我试图在表单中编程一个字段,根据他们在另一个字段中输入的鱼名自动填充到鱼类,即Pelagic,Bottom等。

问题
我已经成功编写了另一个字段,根据公司ID使用控制源中的CategoryID自动填充公司名称,但是当我没有查找值时,我还没想出如何做同样的事情基于ID。

每次我使用DLookup尝试此操作时,都会在字段中收到错误消息。这可能是使用DLookup,还是我应该采用另一种方式?

谢谢

1 个答案:

答案 0 :(得分:1)

如果我是正确的,MainFishNames包含一个名为CategoryID的字段,它是Category表的FK,那么您将需要一个嵌套的DLookup来首先找到CategoryID,然后将其用作Category Name的条件:

=DLookup("[Category]", "Category", "[CategoryID] = " & DLookup("[CategoryID]", "MainFishNames", "[CommonNames] = '" & Forms!Prices!Combo43 & "'"))

话虽这么说,使用DLookup可能会影响性能,并且可能不适合每个控件。如果您的表单绑定到MainFishNames表,则使用绑定到Category表的子表单应该是一个更简单,更快速的解决方案。