访问表单Dlookup-使用组合框表示表达式值

时间:2018-08-15 09:31:38

标签: vba ms-access ms-access-2010

早上好

我正在为一位同事做一些工作,他想创建一个表格,在其中可以更改为通过组合框和条件查看的列

我尝试了以下

=DLookUp(" & [Combo8] & ","Product Guidelines","PC =  '" & [Combo2] & "'")

但出现错误,如果我将表达式硬编码到其中一列,则可以正常工作,但是当设置为查看组合框时,它不起作用,我尝试了几种代码变体,但没有运行没主意

请有人帮忙

谢谢

2 个答案:

答案 0 :(得分:1)

仔细查看您的代码。您正在将文字字符串" & [Combo8] & "(包括空格和&符)作为第一个参数传递给DLookup

尝试

=DLookUp([Combo8], "Product Guidelines", "PC = '" & [Combo2] & "'")

或者如果Combo8的内容中有空格,

=DLookUp("[" & [Combo8] & "]", "Product Guidelines", "PC = '" & [Combo2] & "'")

甚至可能带有引号:

=DLookUp("""[" & [Combo8] & "]""", "Product Guidelines", "PC = '" & [Combo2] & "'")

答案 1 :(得分:1)

语法为:

=DLookUp("[FieldNameToLookUp]","[Product Guidelines]","PC = '" & Me![Combo2] & "'")

,因为您可能没有名为Combo8的字段。

如果Combo8拥有该名称,则为:

=DLookUp("[" & Me!Combo8 & "]","[Product Guidelines]","PC = '" & Me![Combo2] & "'")