麻烦各位大虾给点提示    Dim txtSQL As String
    Dim mrc As ADODB.Recordset
    Dim MsgText As String
    txtSQL = "SELECT * FROM userInfo"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    Set dGrid.DataSource = mrc
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
    '执行sql语句,并返回记录集对象
    Dim connect As ADODB.Connection
    Dim result As ADODB.Recordset
    Dim sTokens() As String
    '异常处理
    On Error GoTo ExecuteSQL_Error
    '用split函数产生一个包含各个子串的数组
    sTokens = Split(SQL)
    Set connect = New ADODB.Connection
    '打开连接
    connect.Open ConnectString
    '判断查询语句内容
    If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then
        connect.Execute SQL
        MsgString = sTokens(0) & "query successful"
    Else
        Set result = New ADODB.Recordset
        result.Open Trim$(SQL), connect, adOpenKeyset, adLockOptimistic
        '返回记录集对象
        Set ExecuteSQL = result
        MsgString = "查询到" & result.RecordCount & "条记录"
    End If
ExecuteSQL_Exit:
    Set result = Nothing
    Set connect = Nothing
    Exit Function
ExecuteSQL_Error:
    MsgString = " 查询错误:" & Err.Description
    Resume ExecuteSQL_Exit
End Function