我想请问一下这个模块为什么会出错?
错误提示为
此句Public Function TransactSQL(ByVal sql As String) As ADODB.Recordset
用户定义类型未定义完整代码如下:Public gUserName As String                        '保存用户名称
Public flag As Integer                            '添加和修改的标志
Public gSQL As String                             '保存SQL语句
Public kqsql As String                            '保存查询考勤结果SQL语句
Public kqsql2 As String                           '保存查询其他考勤结果SQL语句
Public ArecordID As Integer                       '保存上下班记录编号
Public LrecordID As Integer                       '保存请假记录编号
Public OrecordID As Integer                       '保存加班记录编号
Public ErecordID As Integer                       '保存出差记录编号
Public iflag As Integer                           '数据库是否打开标志
Public Function TransactSQL(ByVal sql As String) As ADODB.Recordset
Dim con As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strConnection As String
Dim strArray() As String
Set con = New ADODB.Connection                  '创建连接
Set rs = New ADODB.Recordset                    '创建记录集
On Error GoTo TransactSQL_Error
    strConnection = "Provider=Microsoft.jet.oledb.4.0;Data Source=" & App.Path & "\Person.mdb"
    strArray = Split(sql)
    con.Open strConnection                      '打开连接
    If StrComp(UCase$(strArray(0)), "select", vbTextCompare) = 0 Then
        rs.Open Trim$(sql), con, adOpenKeyset, adLockOptimistic
        Set TransactSQL = rs                   '返回记录集
        iflag = 1
    Else
        con.Execute sql                        '执行命令
        iflag = 1
    End If
TransactSQL_Exit:
    Set rs = Nothing
    Set con = Nothing
    Exit Function
TransactSQL_Error:
    MsgBox "查询错误:" & Err.Description
    iflag = 2
    Resume TransactSQL_Exit
End FunctionPublic Sub TabToEnter(Key As Integer)
    If Key = 13 Then                            '判断是否为回车键
    SendKeys "{TAB}"                            '转换为Tab键
    End If
End SubSub main()
    Dim fLogin As New frmLogin
    fLogin.Show vbModual                        '显示窗体
End Sub在线等答案  希望回答的朋友能一直关注本贴

解决方案 »

  1.   

    未引用ADO类库,引用下ADO库就可以了。
      

  2.   

    我引用过了,但是最后一段程序又出错了------------------------------------------------
    Sub main()
        Dim fLogin As New frmLogin
        fLogin.Show vbModual                        '显示窗体
    End Sub
    ------------------------------------------------ Dim fLogin As New frmLogin   用户定义类型未定义
      

  3.   

    改为:
    Sub main()
        Dim frm As Form
        set frm=New frmLogin
        frm.show 1
    End Sub
      

  4.   

    引用下ADO库就OK了
    方法为:工程--引用--Microsoft ActiveX Data Objects XX
    如果还不明白就问,我会关注此贴的:)