Set rstTmp = CurrentDb.OpenRecordset("A", dbOpenDynaset) rstTmp.Filter = "ID Like '*" & strSelBId & "*'" Set rstTmpFiltered = rstTmp.OpenRecordset …… rstTmpFiltered.Close Set rstTmpFiltered = Nothing rstTmp.Close Set rstTmp = Nothing
在DAO里对记录集使用Filter,可以如上代码段处理,注意如下几点:
(1)要加Filter的记录集必须以
dbOpenDynaset形式打开,不能不指定打开形式,否则运行时错误3251:这种对象类型不支持该操作。
(2)和ADO的Filter不同的是,设置Filter之后,并不会直接在原纪录集立刻应用该Filter,而需要调用员记录集的OpenRecordSet方法,得到Filter之后的记录集
(3)由于(2),用完Filter之后要记得把两个记录集都关上并设置Nothing
其他和filter相关的文章: