我将 2003 年的数据库转换为 2010 年的数据库,并且 2003 年创建的 VBA 脚本在 2010 年不起作用。我收到一条消息,指出存在“编译错误 - 未定义用户定义的类型”。我没有 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
您需要设置对 ADODB 库的引用。这是 :
Microsoft ActiveX Data Objects x.x Library
在代码窗口中,选择“工具”->“参考”并向下滚动到所需的参考,然后勾选它。如果您使用 DAO 记录集并且它们没有明确定义为,您的代码可能会遇到另一个问题DAO.Recordset
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)