Така че, имам нужда от начин за освежаване на свързаните таблицимоята база данни за достъп, така че ако Интернет се прекъсне по някаква причина ODBC няма да има грешка при изпращане на заявка и просто се опреснява, за да види дали заявката може да бъде изпратена отново. Въпреки това, базата данни на Access не се свързва отново по някаква причина когато се появи отново Интернет. Има ли начин в VBA да опресните свързаните таблици, ако това се случи?
Отговори:
1 за отговор № 1Бихте ли .RefreshLink
метод направи това, което искаш?
Тук има пример: https://msdn.microsoft.com/en-us/library/office/ff198349.aspx
Друго решение би било да се свържете отново с отдалечената база данни, призоваваща тази функция.
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