Você pode usar a ação de macro Requery nos bancos de dados access para atualizar os dados em um controle especificado no objeto ativo requerindo a origem do controle. Se nenhum controle for especificado, essa ação requer a origem do objeto em si. Use essa ação para garantir que o objeto ativo ou um de seus controles exiba os dados mais atuais.
Configuração
A ação de macro Requery tem o argumento a seguir.
Argumento da ação |
Descrição |
Nome do Controle |
O nome do controle que você deseja atualizar. Insira o nome do controle na caixa Nome do Controle na janela de design de macro. Você deve usar apenas o nome do controle, não o identificador totalmente qualificado (como Forms!formname! controlname). Deixe esse argumento em branco para requerer a origem do objeto ativo. Se o objeto ativo for um folha de dados ou uma consulta conjunto de resultados, você deverá deixar esse argumento em branco. |
Comentários
A ação de macro Requery faz um dos seguintes procedimentos:
-
Executa novamente a consulta na qual o controle ou objeto se baseia.
-
Exibe registros novos ou alterados e remove todos os registros excluídos do tabela em que o controle ou objeto se baseia.
Observação: A ação de macro Requery não afeta a posição do ponteiro de registro.
Os controles com base em uma consulta ou tabela incluem:
-
Caixas de listagem e caixas de combinação.
-
Controles de subformação.
-
Objetos OLE, como gráficos.
-
Controles que contêm funções de agregação de domínio, como DSum.
Se o controle especificado não for baseado em uma consulta ou tabela, essa ação força um recálculo do controle.
Se você deixar o argumento Nome do Controle em branco, a ação Requery terá o mesmo efeito que pressionar SHIFT+F9 quando o objeto tiver o foco. Se um controle subformulário tiver o foco, essa ação requer apenas a origem do subforma (assim como pressionar SHIFT+F9 faz).
Observação: A ação de macro Requery requer a origem do controle ou objeto. Em contraste, a ação de macro RepaintObject repinta controles no objeto especificado, mas não requer o banco de dados ou exibe novos registros. A ação macro ShowAllRecords não apenas requer o objeto ativo, mas também remove todos os filtros aplicados, o que a ação de macro Requery não faz.
Se você quiser requerer um controle que não esteja no objeto ativo, use o método Requery em um módulo de Visual Basic for Applications (VBA), não a ação macro Requery ou seu método Requery correspondente do objeto DoCmd. O método Requery no VBA é mais rápido que a ação macro Requery ou o método DoCmd.Requery . Além disso, quando você usa a ação macro Requery ou o método DoCmd.Requery , Access fecha a consulta e a recarrega do banco de dados, mas quando você usa o método Requery , o Access executa novamente a consulta sem fechá-la e recarregá-la. Observe que o método ADO (ActiveX Data Object) Requery funciona da mesma forma que o método Access Requery .