Você pode eliminar a necessidade do DSN local em cada máquina usando um pouco de código no banco de dados do Access. É claro que você ainda precisa do driver ODBC apropriado instalado, mas espero que o que você precisa seja, provavelmente, padrão no Windows.
Um DSN local será necessário para criar inicialmente o banco de dados.
O seguinte no que eu uso para dinamicamente relinking a um banco de dados MySQL, então você precisará editá-lo adequadamente. O código é chamado a partir da macro AutoExec ou pode ser executado manualmente ou de um formulário.
Note que este não é o meu código, mas eu o uso há muito tempo e não me lembro de onde o comprei originalmente. Tudo o que fiz foi editá-lo para atender às minhas necessidades.
Option Compare Database
Public Function ReLinkTables()
Dim dbPUBS As DAO.Database
Dim tdfPUBS As DAO.TableDef
Dim strTable As String
Dim strConnect As String
Dim InFile As Integer
' Set the following variables tosuit your DB connection
Dim Server As String
Dim Database As String
Dim User As String
Dim Password As String
On Error GoTo 0
Set dbPUBS = Nothing
Set dbPUBS = CurrentDb
strConnect = "DRIVER={MySQL ODBC 3.51 Driver};" _
& "SERVER=" & Server & ";" _
& "DATABASE=" & Database & ";" _
& "UID=" & User & ";" _
& "PWD=" & Password & ";" _
& "OPTION=" & 1 + 2 + 8 + 32 + 2048 + 16384
' Refresh Access linked tables
For Each tdfPUBS In dbPUBS.tabledefs
' Only attempt to refresh link on tables that already
' have a connect string (linked tables only)
If Len(tdfPUBS.Connect) > 0 Then
strTable = tdfPUBS.Name
' Set the tables connection string
tdfPUBS.Connect = strConnect
' and refresh the link
tdfPUBS.RefreshLink
End If
Next
' Refresh Connect String for all Pass-Through Queries
'strMsg = "Refreshing links for all Pass Through Queries."
'DoCmd.Echo True, strMsg
'For Each qdfPUBS In dbPUBS.QueryDefs
'If Len(tdfPUBS.Connect) > 0 Then
'qdfPUBS.Connect = strConnect
'End If
'Next
Função final