关闭打开的记录集会产生运行时错误

时间:2013-04-12 08:39:00

标签: vba excel-vba database-connection excel

我有一个在userform的类模块中声明的ADO记录集变量。记录集在表单的Activate事件中打开,我试图在表单的Terminate事件中关闭它,代码如下:

Private Sub UserForm_Terminate()

If VersionIsReleased Then
    ThisWorkbook.Parent.Quit
Else

    If Not m_rs Is Nothing Then

        If m_rs.State = adStateOpen Then
            m_rs.Close
        End If

        Set m_rs = Nothing
    End If

    Close_CN g_cn
    ThisWorkbook.Application.Visible = True
End If

End Sub

m_rs.Close产生运行时错误:“在此上下文中不允许操作。”。任何想法为什么会这样?

1 个答案:

答案 0 :(得分:4)

如果在尝试关闭记录集时正在编辑记录集,则会发生该错误。如果您使用AddNew或更改使用Fields().Value的任何Update,请确保在关闭之前保存修改。您可以检查EditMode属性以查看记录集的状态。