Pode utilizar a ação de macro Requerer nas bases de dados do Access para atualizar os dados num controlo especificado no objeto ativo ao requerer a origem do controlo. Se não for especificado nenhum controlo, esta ação requer a origem do próprio objeto. Utilize esta ação para garantir que o objeto ativo ou um dos respetivos controlos apresenta os dados mais atuais.
Definição
A ação de macro Requerer tem o seguinte argumento.
Argumento de ação |
Descrição |
Nome do Controlo |
O nome do controlo que pretende atualizar. Introduza o nome do controlo na caixa Nome do Controlo na janela de estrutura da macro. Deve utilizar apenas o nome do controlo e não o identificador completamente qualificado (como Formulários!formname! nome do controlo). Deixe este argumento em branco para repetir a origem do objeto ativo. Se o objeto ativo for um folha de dados ou uma consulta conjunto de resultados, tem de deixar este argumento em branco. |
Observações
A ação de macro Requerer efetua um dos seguintes procedimentos:
-
Executar novamente a consulta na qual o controlo ou objeto se baseia.
-
Apresenta quaisquer registos novos ou alterados e remove todos os registos eliminados do tabela em que o controlo ou objeto se baseia.
Nota: A ação de macro Repetir Não afeta a posição do ponteiro do registo.
Os controlos baseados numa consulta ou tabela incluem:
-
Caixas de listagem e caixas de combinação.
-
Controlos de subformulário.
-
Objetos OLE, como gráficos.
-
Controlos que contêm funções de agregação de domínio, como DSum.
Se o controlo especificado não se basear numa consulta ou tabela, esta ação força um novo cálculo do controlo.
Se deixar o argumento Nome do Controlo em branco, a ação Repetir tem o mesmo efeito que premir SHIFT+F9 quando o objeto tiver o foco. Se um controlo de subformulário tiver o foco, esta ação requer apenas a origem do subformulário (tal como premir SHIFT+F9).
Nota: A ação de macro Repetir requer a origem do controlo ou objeto. Por outro lado, a ação de macro RepaintObject repint controla o objeto especificado, mas não requer a base de dados nem apresenta novos registos. A ação de macro ShowAllRecords não só requer o objeto ativo, como também remove todos os filtros aplicados, o que a ação de macro Requerer não faz.
Se quiser repetir um controlo que não está no objeto ativo, tem de utilizar o método Requery num módulo Visual Basic for Applications (VBA), não a ação de macro Requerer ou o método Requery correspondente do objeto DoCmd. O método Requery no VBA é mais rápido do que a ação de macro Requerer ou o método DoCmd.Requery . Além disso, quando utiliza a ação de macro Requerer ou o método DoCmd.Requery , o Access fecha a consulta e recarrega-a a partir da base de dados, mas quando utiliza o método Requerer , o Access executará novamente a consulta sem a fechar e recarregar. Tenha em atenção que o método ADO (ActiveX Data Object) Requery funciona da mesma forma que o método Access Requery .