调试时在With rsuser
      .CursorLocation = adUseClient
      .CursorType = adOpenKeyset
      .LockType = adLockPessimistic
      .Open "person", cnlocal(出错)
  End With

解决方案 »

  1.   

    同意 shawls(小山(坚持VB,学VB.net和C#)) 的
      

  2.   

    我不是很清楚怎么回事,但我想这样做可以避免问题
    就是在下面的过程中添加参数,

    Private Sub Class_Initialize()

    Private Sub Class_Initialize(byval mycon as ADODB.Connection)
    然后在实例化的时候,传递cnlocal给类实例
      

  3.   

    如果类与公共模块是同一工程,请检查一下,是否已经设置为有Sub main启动,具体操作:工程菜单/……属性/启动对象中选中的是否为Sub main,……为具体的工程名字。另外类的实例生成一定打开连接之后。
    如果类与公共模块不再同一工程,则要再定义一个方法将connection对象传进去才行。如定义一个
    public sub InitClass(myconn as connection)
     Set rsuser = New ADODB.Recordset
      With rsuser
          .CursorLocation = adUseClient
          .CursorType = adOpenKeyset
          .LockType = adLockPessimistic
          .Open "person", myconn
      End With
    end sub
    生成类实例后,再调用这个方法就可以,
    例:
      MyClass.initClass cnlocal
    注意这一句一定要放在打开连接的后面