ADODB.Connection和ADODB.Recordset - 用户定义未定义的类型

Mai*_*eya 1 excel ms-access vba

使用VBA连接Access DB时,我遇到了一个奇怪的错误.VBA代码如下:

Sub DBC()
    Dim cn As ADODB.Connection
    Dim rs As ADODB.Recordset

    Set cn = New ADODB.Connection

    cn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\Bmcstr01\grp\SRV\Allsrv\Resource Planning\Forecasting & MI\MI\backup DM\HH Complaints\Database (TCS Version)\Complaints DB.accdb;"

    Set rs = New ADODB.Recordset

    rs.Open "Access_Log", cn, adOpenKeyset, adLockOptimistic, adCmdTable

    rs.Filter = "ID='335266' AND Work='Test'"
    rs("Login").Value = "02/07/2018"
    rs.Update
    rs.Close
    Set rs = Nothing
    cn.Close
    Set cn = Nothing

End Sub
Run Code Online (Sandbox Code Playgroud)

它给出的错误是:"编译错误:用户定义未定义的类型",它指向子的第一行.

我的表存在于DB中.它的结构如下:

ID  Login   Work
335266  04/07/2018  Test
335266  03/07/2018  Test2
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我,为什么它不接受ADODB以及如何解决这个问题?

小智 5

转到VBE的工具,参考,然后找到并在"Microsoft ActiveX Data Objects 6.1 Library"旁边打勾,将库包含在项目中.

在此输入图像描述