Quindi, ho bisogno di un modo per aggiornare le tabelle collegate inil mio database di accesso in modo che se Internet disconnette per qualche motivo l'ODBC non riceve un errore quando viene inviata una query e semplicemente si aggiorna per vedere se è possibile inviare nuovamente la query. Tuttavia, il database di Access non si riconnette per qualche motivo quando Internet ritorna. C'è un modo, in VBA, per aggiornare le tabelle collegate se questo accade?
risposte:
1 per risposta № 1Sarebbe il .RefreshLink
metodo fai quello che vuoi?
Ecco un esempio qui: https://msdn.microsoft.com/en-us/library/office/ff198349.aspx
Un'altra soluzione potrebbe essere ricollegarsi al database remoto chiamando questa funzione.
Function ConnectODBC(ByVal strDsn As String, ByVal strDatabase As String, ByVal strUserName As String, ByVal strPassword As String)
Dim qdf As DAO.QueryDef
Dim rst As DAO.Recordset
Dim strConnection As String
strConnection = "ODBC;DSN=" & strDsn & ";" & _
"DATABASE=" & strDatabase & ";" & _
"UID=" & strUserName & ";" & _
"PWD=" & strPassword
Set qdf = CurrentDb.CreateQueryDef("")
With qdf
.Connect = strConnection
.SQL = "SELECT 1;"
End With
Set rst = qdf.OpenRecordset(dbOpenSnapshot, dbSQLPassThrough)
ConnectODBC = True
Set rst = Nothing
Set qdf = Nothing
End Function