Nel WEB trovi veramente un sacco di codice... ma, serve capire l'approccio in modo critico per non prendere ad occhi chiusi quello che molti hanno scritto in modo "semplificativo".
Si trova molto relativo al RefreshLink, ovvero ripristinare le connessioni alle LinkedTables per rigenerare appunto il legame a valle di modifiche lato Server, ma questo da per scontato che le LinkedTable restino sempre le stesse e che rimanga l'oggetto nel Client... troverai infatti molto codice che cicla la collection Tabledefs, andando ad interrogare la proprietà Connect che se valorizzata contiene la connection string.
Esempio semplificato:
' Da qualche parte salvi la connection string
Const sConnect As String="........"
Dim tdf As DAO.Tabledef
For Each tdf In dbs.TableDefs
If Len(tdf.Connect)>0 And Left(tdf.Name, 1) <> "~" Then 'in questo caso è una Linked Table
tdf.Connect = sConnect
tdf.RefreshLink
End If
Next
Questo è il punto debole di questo approccio, oltretutto se aggiungi una Tabella con questo metodo devi aggiungerla a MANO... perchè nel client non esiste quindi non viene trovata nella Collection Tabledefs.
Personalmente ho sempre privilegiato l'approccio più completo anche per salvaguardare gli aspetti di sicurezza, quindi:
- Su open del FE(Client) effettuo il RELINK da zero si può fare in diversi modi anche con TransfertDatabase(poi posto il codice)
Per fare questo però serve sapere quali tabelle Linkare, spesso nel Server che non sempre è Access(JET) non tutte le Tabelle vanno linkate... quindi lato Server creo una Tabella di servizio con campo Testo contenente il nome delle sole tabelle da linkare(si può gestire anche eventuale livelli di accesso ecc.. ma diventa complesso), quindi creo una prima connessione da codice al Server sulla tabella di Servizio aprendo un RS e lo ciclo creando al volo le Linked ex-novo. - Su Close le cancello tutte
Questo evita che nel Client rimangano dati accessibili in modo semplice senza necessità di Login, perchè se lasci attivi i Link puoi fare da Bridge sul server senza autenticazione.
Detto questo anni orsono avevo fatto un demo... che ti riporto, ma come sempre non aspettarti cose semplici, sono complicato di mio:
https://1drv.ms/u/c/8285b3eb6cb0b6b7/IQC3trBs67OFIICCOhQAAAAAAcir0OwAuXx0HTEgBLuqfX8?e=5IitQA
In modo più semplice altrimenti usi questo codice inserendo il TransferDatabase nel Ciclo delle Tables salvate nel Client:
https://www.tek-tips.com/threads/transferdatabase-with-password.590760/
Prova a giocarci, butta giù un po di codice se poi hai problemi ci si guarda...