VBA-从Excel更新Access文件的链接表

VBA-从Excel更新Access文件的链接表,excel,ms-access,vba,Excel,Ms Access,Vba,我正在尝试使用Excel文件中的VBA编码更改Access文件“Hey.accdb”中的链接表地址 我已经在我的Excel文件中编写了下面的脚本,当我运行它时,它会提示错误“objectrequired”。有人能帮我解决这个问题吗。我盯着它看太久了。谢谢 Sub RunMacroinAccesswithPara2() Set Db = CreateObject("Access.Application") Db.OpenCurrentDatabase "D:\Database1\

我正在尝试使用Excel文件中的VBA编码更改Access文件“Hey.accdb”中的链接表地址

我已经在我的Excel文件中编写了下面的脚本,当我运行它时,它会提示错误“objectrequired”。有人能帮我解决这个问题吗。我盯着它看太久了。谢谢

Sub RunMacroinAccesswithPara2()

Set Db = CreateObject("Access.Application")
        Db.OpenCurrentDatabase "D:\Database1\Hey.accdb"
        Db.Visible = True
        Db.AutomationSecurity = msoAutomationSecurityLow

    DoCmd.TransferDatabase TransferType:=acLink, _
        DatabaseType:="Microsoft Access", _
        DatabaseName:="V:\Reporting\Quarterly\2018Q2\JP\Data\04\Database\Valuation_Database.mdb", _
        ObjectType:=acTable, _
        Source:="Valuation_Database_Adjusted", _
        Destination:="Valuation_Database_Adjusted"

End Sub

DoCmd
属于Access应用程序对象

所以使用

Db.DoCmd.TransferDatabase ' etc.
编辑

要更新链接,需要使用
TableDef
对象,设置其
.Connect
属性并运行
.RefreshLink


请参见

嗨,安德烈!这很有效。但是,它会创建一个重复的表。我是否可以只更新现有表的链接(不使用deletetetable然后使用transferdatabase)?