在Access 2010表单宏中筛选语法

时间:2013-09-13 19:47:18

标签: vb.net vba ms-access access-vba

我是新手来访问编程,所以请在新手问题上给我一点松懈。

我有一个用Create创建的表单 - >更多表格 - >多个项目。该表单基于一个查询,该查询返回三个字段中的值,其中两个字段是隐藏的。这三个字段是FullName,ID和LastName。 FullName是可见的,而ID和LastName不可见。

我在名为txtFilter的表单上方添加了一个文本框,我在txtFilter的After Update事件中添加了一个宏,目的是过滤掉结果,以便只有LastName值与输入的值一样的记录的FullNames txtFilter。

在宏构建器的“WHERE =”部分中,我添加了以下内容:

='LastName Like '' & [txtFilter] & '*''  

注意double ==。当我在txtFilter中键入一个值并按回车键时,出现一个“类型不匹配”的对话框。

任何人都可以告诉我如何修复这种语法,以便它能够完成它应该做的事情吗?此外,非常感谢语法的解释。

1 个答案:

答案 0 :(得分:3)

您应该使用双引号,并且需要明确指出可以找到txtFilter的位置;也就是说,它是Control上的Form。在Where框中输入以下内容(没有等号):

[LastName] Like [Forms]![frmStaff]![txtFilter] & "*"

将frmStaff替换为表单名称。