DLookup 中的错误作为访问表单中的控制源

Posted

技术标签:

【中文标题】DLookup 中的错误作为访问表单中的控制源【英文标题】:Errors in DLookup as a control source in access form 【发布时间】:2016-06-10 15:15:59 【问题描述】:

我有一个带有 Dlookup 函数控制源的文本框。但是 Dlookup 格式让我抓狂,我尝试了一百次将另一个组合框值作为 Dlookup 函数中的标准。我得到了“#名字?”或“#错误”。

我试过了:

=DLookUp("[Contact]","Supllier","[Company]='" & [Forms]![PurchaseOrder]![cboSupplierCompany] & "'")

得到"# Error"

当我输入时:

=DLookUp("[Contact]","Supllier","[Company]='" & [Me]![cboSupplierCompany] & "'")

我收到了"# Name?"

【问题讨论】:

将代码 sn-ps 包装在代码块中(当您提出/编辑问题时,编辑栏中的 符号)将使您的代码更易于阅读。它保留间距、制表符、新行,甚至突出显示某些关键字。一个整洁、写得好的问题更有可能得到更多积极的关注。 【参考方案1】:

我终于找到了解决办法。在表达式中使用 Dlookup 的正确方法是使用表达式编辑器选择表格字段和表单控件。

Dlookup 在我的文本框中的工作表达式是:

DLookUp(" [Supplier]![Contact] ","Supplier"," [Supplier]![Company] ='" & [cboSupplierCompany] & "'")

【讨论】:

【参考方案2】:

使用上面类似版本的 SQL 查询窗口可以正常工作。

但它们在 ControlSource 属性设置中不起作用。在这里,您必须使用分号 (;) 而不是逗号 (,)。至少在德语设置环境中。德语的控制设置是:

Steuerelementinhalt
= DLookUp(" [Supplier]![Contact] ";"Supplier";"  [Supplier]![Company] ='" & [cboSupplierCompany] & "'"

【讨论】:

以上是关于DLookup 中的错误作为访问表单中的控制源的主要内容,如果未能解决你的问题,请参考以下文章

通过“缓存”表或其他策略来提高 DLookup 的访问速度?

Access 2007 表单中的 DLookup 错误

ms访问dlookup函数报错

Access 中的 DLookup 直到在表单中单击 textBox 才运行

如何在访问表单上的文本框的验证规则中使用 DLookup

在表单控件的默认值字段中使用 Dlookup