这应该很明显,但我很难。如何使用其他记录集中的值打开Access记录集
我在Access 2007中,并且正在循环查看记录。我想在第一个过滤第二个记录集。
的代码如下:
Dim db as Database
Dim rst1 as DAO.Recordset, rst2 as DAO.Recordset
Set rst1 = db.OpenRecordset("TABLE1", dbOpenDynaset)
rst1.MoveFirst
Do Until rst1.EOF
rst1.Edit
set rst2 = db.OpenRecordset("SELECT * FROM TABLE2 WHERE ID = 'rst1![ID]';")
....
这并不打开上过滤ID的记录集。但是,下面的代码运行时没有错误(其中ID = 0001),并且我得到了适当过滤的记录集。
set rst2 = db.OpenRecordset("SELECT * FROM TABLE2 WHERE ID = '0001';")
我已经测试,以确保RST1![ID] = 0001。我有一个变量放在0001,放在变量声明,也没有运气。我注意到使用rst(“ID”)语法会导致立即出错。我也尝试在查询编辑器中构建SQL并复制和粘贴。
我错过了什么?
这看起来真的很傻代码。你为什么认为你需要打开两个记录集? – 2011-03-05 21:47:39