无法通过ADO为accdb格式更改链接数据源

时间:2013-09-11 07:09:33

标签: excel vba ms-access ado

我正在尝试使用ADO和ADOX(来自excel)将链接表添加到Acccess数据库。

但每次尝试时,都会收到错误消息: “Microsoft Access不支持链接到以比当前数据库格式更新的格式保存的Access数据库或Microsoft Office Excel工作簿。”

链接表和目标数据库都是使用Access 2010生成的,并且是.accdb格式。我的代码:

    Set cat = New ADOX.Catalog
    Set tbl = New ADOX.Table

    ' Open the catalog.
    cat.ActiveConnection = objConnection

    tbl.ParentCatalog = cat
    tbl.Name = "Promotions"
    tbl.Properties("Jet OLEDB:Link Datasource") = strCurrentPath & _
        "LocPrcCh.accdb"
    tbl.Properties("Jet OLEDB:Remote Table Name") = "Promotions"
    tbl.Properties("Jet OLEDB:Create Link") = True
    tbl.Properties("Jet OLEDB:Link Provider String") = _
        "MS Access;PWD=XXXXXXXXX;"

    cat.Tables.Append tbl

返回最后一行之后的错误。任何想法如何使这项工作?

1 个答案:

答案 0 :(得分:0)

解决了它。

我的目标文件具有.accdb扩展名,但它不是2007格式。打开时,它说它是2002 - 2003格式的访问文件。

该文件是在Access 2010中创建的,但后来更改了格式我在程序的其他地方使用了jetengine压缩功能,以旧格式创建了新版本的数据库。