我维护了几年前Office 2010(32位)成为标准时构建的Access数据库。我们最近升级到Office 365(也是32位)。此数据库非常依赖于使用Me.Recordsetclone
来执行操作。例如:
Private Sub Form_Unload(Cancel As Integer)
Dim rst As ADODB.Recordset
Set rst = Me.RecordsetClone
'Do stuff
End Sub
现在已升级Office,当代码调用Me.RecordSetClone
时,将显示“选择数据源”对话框。当我在运行2010的RDP上尝试相同的代码时,它正常工作。基于此,我在网上找不到什么,我认为这是一个库转换/版本问题。
我能想到的唯一解决方法是让用户并排运行两个版本并来回切换。但这将是一个维护问题。任何人都可以提出更好的选择吗?
答案 0 :(得分:1)
我从未见过ADO用于此,只有DAO:
Private Sub Form_Unload(Cancel As Integer)
Dim rst As DAO.Recordset
Set rst = Me.RecordsetClone
'Do stuff
End Sub
答案 1 :(得分:0)
我遇到了同样的问题,并且似乎已通过将记录集克隆引用从以下位置更改而得到纠正
Me.*Subform*.Form.RecordsetClone
到以下
Set Rst = Forms!*Mainform*.Form!*Subform*.Form.Recordset.Clone
我希望这会有所帮助。