這應該很明顯,但我很難。如何使用其他記錄集中的值打開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