我在这个事件有了一段代码
Private Sub Command1_Click()
 Dim MsgText As String
    Dim txtSQL As String
    Dim mrc As ADODB.Recordset
  txtSQL = "select * from aa where ad =aa"
        Set mrc = ExecuteSQL(txtSQL, MsgText)
    UserName = ""
        If mrc.EOF = True Then
            MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
            txtUserName.SetFocus
        Else
            If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then
                OK = True
                mrc.Close
                Me.Hide
                UserName = Trim(txtUserName.Text)
            Else
                MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告"
                txtPassword.SetFocus
                txtPassword.Text = ""
            End If
        End If 
    Exit Sub
然后我声明了一个通用函数是
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset   Dim cnn As ADODB.Connection
   Dim rst As ADODB.Recordset
   Dim sTokens() As String
   
   On Error GoTo ExecuteSQL_Error
   
   sTokens = Split(SQL)
   Set cnn = New ADODB.Connection
   cnn.Open ConnectString
   If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then
      cnn.Execute SQL
      MsgString = sTokens(0) & _
         " query successful"
   Else
      Set rst = New ADODB.Recordset
      rst.Open Trim$(SQL), cnn, _
         adOpenKeyset, _
         adLockOptimistic
      'rst.MoveLast     'get RecordCount
      Set ExecuteSQL = rst
      MsgString = "查询到" & rst.RecordCount & _
         " 条记录 "
   End If
ExecuteSQL_Exit:
   Set rst = Nothing
   Set cnn = Nothing
   Exit Function
   
ExecuteSQL_Error:
   MsgString = "查询错误: " & _
      err.Description
   Resume ExecuteSQL_Exit
End Function但是在运行当中说是错的,是实时错误"91"
对像变量或with块变量未设置,请问一下是什么原因,谢谢,我现在非常的急哟!