Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Atualiza a conexão de uma pasta de trabalho.
Sintaxe
expressão. Atualização
expressão Uma variável que representa um objeto WorkbookConnection .
Comentários
Se a propriedade DisplayAlerts for False, as caixas de diálogo não serão exibidas e o método Refresh falhará com a exceção de Informações de Conexão Insuficientes.
Uma falha de atualização para uma conexão não terá nenhum impacto nas operações de atualização para as outras conexões.
Se a conexão carregar uma consulta criada com o Power Query em uma tabela de planilha, a atualização em segundo plano será desativada para a conexão (a propriedade BackgroundQuery de seu objeto OLEDBConnection será False) e a consulta como um todo não será avaliada (por exemplo, devido a uma error expressão em uma etapa, ou uma função como Number.FromText essa falha enquanto o valor de uma etapa é calculado em vez de dentro de uma única célula), o método Refresh gera o erro de tempo de execução 1004 com uma descrição genérica ("erro definido pelo aplicativo ou definido pelo objeto"). A mensagem de erro produzida pela consulta não está incluída. Para obter a mensagem de erro da consulta, atualize a tabela usando o método Refresh de seu objeto QueryTable com a atualização em segundo plano desativada. Esse método gera o mesmo número de erro e sua descrição inclui o erro da consulta, por exemplo [Expression.Error] ....
Se a atualização em segundo plano estiver ativada, o método Refresh retornará antes da conclusão da atualização e os erros que ocorrerem durante a atualização não serão retornados para o código de chamada.
Erros em células individuais do resultado da consulta não fazem com que a atualização falhe. A atualização é bem-sucedida e as células são deixadas vazias.
Exemplo
Este exemplo atualiza todas as tabelas de consulta na planilha ativa e grava a mensagem de erro de cada atualização com falha na janela Imediata. Chamar Refresh nos objetos WorkbookConnection relataria apenas a descrição genérica.
Sub RefreshQueryTables()
Dim lo As ListObject
For Each lo In ActiveSheet.ListObjects
If lo.SourceType = xlSrcQuery Then
On Error Resume Next
' lo.QueryTable.WorkbookConnection.Refresh would report only a generic description.
lo.QueryTable.Refresh BackgroundQuery:=False
If Err.Number <> 0 Then Debug.Print lo.Name & ": " & Err.Description
On Error GoTo 0
End If
Next lo
End Sub
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.