Uma família de sistemas de gerenciamento de banco de dados relacional da Microsoft projetados para a facilidade de uso.
Olá Sidney Guerreiro, tudo bem?
Bem-vindo à Comunidade da Microsoft.
Após analisar sua questão entendo que está com problemas no Access.
Para podermos te auxiliar melhor nos informe, por favor, qual o modelo e fabricante do seu computador.
Antes do erro iniciar houve alguma alteração no sistema? Atualização ou instalação de programas, por exemplo.
Desde quando o erro ocorre?
Existe algum código ou mensagem de erro? Por favor, informe exatamente qual é.
Esse problema ocorre porque o método RefreshLink ignora os relacionamentos da tabela que são criados durante a chamada para o método anterior.
Para contornar esse problema, exclua programaticamente os relacionamentos da tabela antes de você usar o método RefreshLink para atualizar a tabela vinculada. Sub-rotina exemplo para excluir os relacionamentos
Insira o código em um módulo no Microsoft Visual Basic for Applications (VBA):
Public Sub RemoveInvalidRelationships(strTableName As String) On Error Resume Next Dim cnt As Integer Dim i As Integer Dim bForeignTable As Boolean Dim bTable As Boolean Dim td As TableDef cnt = CurrentDb.Relations.Count - 1 ' Go through the relationships collection backwards, to ensure that if we delete one, we will have a valid index For i = cnt To 0 Step -1 bTable = False bForeignTable = False If (StrComp(CurrentDb.Relations(i).Table, strTableName, vbTextCompare) = 0) Then bTable = True If (StrComp(CurrentDb.Relations(i).ForeignTable, strTableName, vbTextCompare) = 0) Then bForeignTable = True If bTable Xor bForeignTable Then ' Determine if either the table or foreign table is the table that we are interested in ' We will then look at the other table to determine if it exists ' If it doesn't exist, delete the relationship If bTable Then Set td = CurrentDb.TableDefs(CurrentDb.Relations(i).ForeignTable) Else Set td = CurrentDb.TableDefs(CurrentDb.Relations(i).Table) End If If Err.Number = 3265 Then CurrentDb.Relations.Delete CurrentDb.Relations(i).Name End If Err.Clear End If Next iEnd Sub
No código-fonte onde o método RefreshLink é chamado, insira o seguinte código imediatamente antes da linha de código de origem RefreshLink:
RemoveInvalidRelationships "WSSLink"
Observação: "WSSLink" é o nome da tabela vinculada está sendo atualizado pelo método RefreshLink.
Para mais detalhes, acesse https://support.microsoft.com/pt-br/help/926526/error-message-when-you-try-to-open-a-linked-sharepoint-table-in-access ou https://support.microsoft.com/pt-br/help/942378/issues-that-are-fixed-in-access-2007-by-the-2007-microsoft-office-suit
Caso o comportamento persista ou se houver outras dúvidas relacionadas aos produtos Microsoft, por favor, poste aqui novamente. Estamos à disposição.
Se essa informação foi útil, marque-a como resposta.
Até mais!