我有3个Access数据库链接,当我将它们从一台计算机移动到另一台计算机时,我必须更新它们......
我一直在尝试使用下面的代码,这似乎可以很好地完成刷新部分...当我得到“找不到可安装的ISAM”时...任何想法如何解决这个问题?
Private Sub RelinkTables()
Dim oldConnection As String
Dim newConnection As String
Dim currentPath As String
currentPath = CurrentProject.Path
Dim tblDef As TableDef
For Each tblDef In CurrentDb.TableDefs
oldConnection = tblDef.Connect
If Right(oldConnection, 7) = "l.accdb" Then
newConnection = currentPath & "\PL.accdb"
Else
If Right(oldConnection, 7) = "d.accdb" Then
newConnection = currentPath & "\MasterDB - consolidated.accdb"
Else
newConnection = currentPath & "\analysis.accdb"
End If
End If
tblDef.Connect = newConnection
tblDef.RefreshLink
Next
End Sub
答案 0 :(得分:1)
以下是链接表的.Connect
属性,其源位于另一个Access数据库中。
? CurrentDb.TableDefs("tblUser").Connect
;DATABASE=C:\share\Access\loginexample.mdb
在构建 newConnection 字符串时,您的代码不包含“; DATABASE =”部分。您可以将其添加到 currentPath 字符串中,然后它将包含在 newConnection 字符串中。
currentPath = ";DATABASE=" & CurrentProject.Path