可以使用Microsoft Access中的DoCmd.TransferDatabase方法来解决这个问题。该方法会将指定的表从一个位置转移到另一个位置,但是会保留表格的链接关系。
示例代码:
Dim db as DAO.Database
Set db = CurrentDb()
Dim sourcePath as String
sourcePath = "C:\OldFolder\" '链接表的原位置
Dim tableName as String
tableName = "LinkedTableName" '链接表的名称
Dim destinationPath as String
destinationPath = "C:\NewFolder\" '链接表的新位置
'清除原位置的链接表
DoCmd.DeleteObject acTable, tableName
'将链接表从原位置拷贝到新位置
DoCmd.TransferDatabase acLink, "Microsoft Access", _
sourcePath & "OldDatabase.accdb", acTable, _
tableName, tableName, DestinationPath & "NewDatabase.accdb", True
'刷新链接表的数据
Dim tdf as DAO.TableDef
Set tdf = db.TableDefs(tableName)
tdf.RefreshLink
注意:这里使用了DAO(Data Access Objects)库,因此需要在代码中添加相应的引用,如下所示:
Tools > References > Microsoft DAO 3.x Object Library
下一篇:保留表格中特定的列