Access 2010编译错误未定义用户定义的类型

时间:2012-08-09 18:36:58

标签: vba ms-access

我将2003数据库转换为2010,并且在2003年创建的VBA脚本在2010年无效。我收到的消息是存在Complie错误 - 未定义用户定义的类型。我没有VBA脚本的经验,我没有创建脚本,但了解它在数据库中完成的操作。它突出显示的具体项目是DIM adoConn As New ADODB.Connection。

我包含脚本任何帮助都会有所帮助,因为执行的操作对我们的工作流程来说是一笔巨大的财富。

Private Sub Error_code_exit(Cancel As Integer)

    On Error GoTo Error_code_exit

    Dim strSQLErrorCode As String
    Dim adoConn As New ADODB.Connection
    Dim adoRSErrorCode As New ADODB.Recordset

    Set adoConn = CurrentProject.Connection

    strSQLErrorCode = "SELECT [Error Matrix1].[Error Code], [Error Matrix1].CTC FROM [Error Matrix1];"

    adoRSErrorCode.Open strSQLErrorCode, adoConn, adOpenKeyset, adLockOptimistic

    If Not adoRSErrorCode.EOF Then

        Do

            If adoRSErrorCode.Fields("Error Code") = Me.Error_Code.Value Then
                If IsNull(adoRSErrorCode.Fields("CTC")) Then
                    Me.chkAgree = True
                    Exit Do
                End If
            End If

            adoRSErrorCode.MoveNext

        Loop Until adoRSErrorCode.EOF

    End If

    adoRSErrorCode.Close
    adoConn.Close

Exit_code_exit:
    Exit Sub

Error_code_exit:

    MsgBox Err.Description
    Resume Exit_code_exit


End Sub

1 个答案:

答案 0 :(得分:4)

您需要设置对ADODB库的引用。它是:

Microsoft ActiveX Data Objects x.x Library

在代码窗口中,选择工具 - >参考,然后向下滚动到您需要的参考,然后勾选它。如果使用DAO记录集并且未明确定义为DAO.Recordset

,则代码可能会遇到其他问题