Vba Recordset.FindFirst方法:为什么它适用于我的某些表类型记录集?
我试图在Access VBA中对DAO记录集使用Vba Recordset.FindFirst方法:为什么它适用于我的某些表类型记录集?,vba,ms-access,dao,recordset,Vba,Ms Access,Dao,Recordset,我试图在Access VBA中对DAO记录集使用Recordset.FindFirst方法,但遇到以下错误: 错误3251:“此类型的对象不支持操作。” 在对进行了一些简短的调查之后,我发现该方法仅适用于动态集类型或快照类型记录集。我更改了以下代码: 我的问题是 为什么这在一个数据库中有效而在另一个数据库中无效,以及 是否建议将代码改为使用dbOpenDynaset类型记录集 在查询或附加表上打开Recordset()时,Access默认为动态集类型(dbOpenDynaset) 在本地表上打
Recordset.FindFirst
方法,但遇到以下错误:
错误3251:“此类型的对象不支持操作。”
在对进行了一些简短的调查之后,我发现该方法仅适用于动态集类型
或快照类型
记录集。我更改了以下代码:
我的问题是
dbOpenDynaset
类型记录集在本地表上打开Recordset()时,它默认为表类型(dbOpenTable)。如何声明rs和rs2?ADODB?对不起,应该更清楚。刀,马克,看看这个。他有一些好消息。啊,非常感谢。关键行是“当您在查询或附加表上打开Recordset()时,Access默认为动态集类型(dbOpenDynaset)。当您在本地表上打开Recordset()时,它默认为表类型(dbOpenTable.)”。我的
rs
表格已链接,而我的rs2
表格是本地的。如果您将此作为答案发布,我会接受吗?
Set rs2 = db.OpenRecordset("table_name")
rs2.FindFirst [search criteria]
Set rs2 = db.OpenRecordset("table_name", dbOpenDynaset)
rs2.FindFirst [search criteria]
Set rs = db.OpenRecordset("tblUsers")
rs.FindFirst [search criteria]