自引用元ID从一行到另一行的ID,并使用关联的查询填充文本框

时间:2018-11-05 17:59:34

标签: access-vba ms-access-2016

我的Access数据库中有一个表luDiatomTaxon,它是表单的记录源。该表包括以下列:ID,ScientificName,AcceptedTaxonID,属,物种等。

由于实验室在列出物种的方式上存在差异或按区域列出物种中存在的差异,因此有时已输入到数据中的科学名称不是“接受的科学名称”,即实验室提供的“科学名称”可能已添加了谓词最后,以区分所识别物种的特定区域特征。但是,出于统计目的,在更新到国家数据库时不使用特定于地区的差异。

因此,如果AcceptedTaxonID字段中有一个条目,则它引用的是同一表中具有ACCEPTED ScientificName的另一行的ID。

我需要编写代码,当用户在表单的combox中选择“ ScientificName”,并且该行的表中有一个AcceptedTaxonID时,将找到与AcceptedTaxonID匹配的ID并填充一个文本框带有该ID的ScientificName。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

我最终在DLookup中使用了DLookup。另外,我需要将其放在IIF语句中-并为IIF函数的“表达式”部分使用DLookup-因为我需要指示如果DLookup结果为Null(假)会发生什么。以下是“接受的分类单元科学名称”文本框的“控制源”。当用户从组合框中选择“他们的”科学名称时,对于文本框,以下语句将使用所选内容查找并显示“接受的”科学名称(如果存在的名称与所选名称不同)。

= IIf(不是IsNull(DLookUp(“ AcceptedTaxonID”,“ luDiatomTaxon”,“ ID =”&[cboDiatomTaxon]))),DLookUp(“ ScientificName”,“ luDiatomTaxon”,“ ID =”&DLookUp(“ AcceptedTaxonID” ,“ luDiatomTaxon”,“ ID =”&[cboDiatomTaxon])),空)