访问2010编译错误用户定义类型未定义
问题描述:
我将2003数据库转换为2010,并且2003年创建的VBA脚本在2010年无法使用。我收到消息:Complie错误 - 未定义用户定义类型。我没有使用VBA脚本的经验,我没有创建脚本,但了解它正在数据库中完成的操作。它突出显示的特定项目是DIM adoConn As New ADODB.Connection。访问2010编译错误用户定义类型未定义
我包含脚本任何帮助都将是有益的,因为执行的操作对我们的工作流程来说是一笔巨大的资产。
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
答
您需要设置对ADODB库的引用。它是:
Microsoft ActiveX Data Objects x.x Library
在代码窗口中,选择工具 - >参考,然后向下滚动到您需要的参考,然后选中它。如果您使用DAO记录集并且它们没有明确定义为DAO.Recordset
可能出现['User Defined Type Not Defined'错误]的重复(http://stackoverflow.com/questions/24261557/) user-defined-type-not-defined-error) – 2016-12-29 08:37:38
[编译器错误:用户定义类型未定义]的可能重复(https://stackoverflow.com/questions/5349580/compiler-error-user-defined-types-没有定义的) – niton 2017-10-31 10:10:30