【发布时间】:2015-09-08 03:05:28
【问题描述】:
我有一个基于选择查询的 MS Access 2003 表单。它包含几个组合框,可用于过滤表单记录。除了其中一个之外,所有这些都按预期工作,我可以让它工作的唯一方法是使用 VBA 替换部分查询的 SQL:
Set qdf = CurrentDb.QueryDefs("MyQuery")
qdfOLD = qdf.sql
qdf.sql = Replace(qdf.sql, strOldCriteria, strNewCriteria)
Me.Requery ' I've also tried DoCmd.Requery and Forms!MyForm.Requery
qdf.sql = qdfOLD
Set qdf = Nothing
替换部件工作正常,如果我省略最后三行,然后在数据表视图中查看查询,我将只看到预期的记录。但由于某种原因,表单没有重新查询 - 即,我仍然看到所有记录,而不是过滤后的子集。我错过了什么?
【问题讨论】:
标签: ms-access vba ms-access-2003