Acção de Macro ProcurarRegisto

Pode utilizar a ação macro SearchForRecord nas bases de dados do ambiente de trabalho do Access para procurar um registo específico numa tabela, consulta, formulário ou relatório.

Definição

A ação macro SearchForRecord tem os seguintes argumentos.

Argumento de ação

Descrição

Tipo de Objeto

Introduza ou selecione o tipo de objeto de base de dados que está a pesquisar. Pode selecionar Tabela,Consulta,Formulárioou Relatório.

Nome do Objeto

Introduza ou selecione o objeto específico que contém o registo para procurar. A lista de drop-down mostra todos os objetos de base de dados do tipo selecionado para o argumento do Tipo de Objeto.

Gravar

Especifique o ponto de partida e a direção da pesquisa.

Definição

Descrição

Anterior

Procure para trás a partir do registo atual.

Seguinte

Procure para a frente a partir do registo atual.

Primeiro

Procurem a partir do primeiro disco. Este é o valor padrão para este argumento.

Apelido

Procure para trás a partir do último registo.

Condição Where

Introduza os critérios para a pesquisa utilizando a mesma sintaxe que uma cláusula SQL ONDE, apenas sem a palavra "ONDE". Por exemplo:

Description = "Beverages"

Para criar um critério que inclua um valor a partir de uma caixa de texto num formulário, deve criar uma expressão que concatena a primeira parte do critério com o nome da caixa de texto contendo o valor para o qual procurar. Por exemplo, o seguinte critério irá pesquisar o campo Descrição pelo valor na caixa de texto denominada txtDescription no formulário denominado frmCategories. Note o sinal igual(=) no início da expressão e a utilização de aspas únicas(') em ambos os lados da referência da caixa de texto:

="Description = '" & Forms![frmCategories]![txtDescription] & "'"

Observações

  • Nos casos em que mais de um registo corresponda aos critérios do argumento "Onde está", os seguintes fatores determinam qual o registo encontrado:

    • A definição de argumento record    Consulte a tabela na secção Definições para obter mais informações sobre o argumento do Registo.

    • A ordem dos registos    Por exemplo, se o argumento de Record for definido para Primeiro,alterar a ordem dos registos pode alterar o registo encontrado.

  • O objeto especificado no argumento 'Nome do Objecto' deve estar aberto antes de esta ação ser executada. Caso contrário, ocorre um erro.

  • Se os critérios no argumento da Condição não forem cumpridos, não ocorrem erros e o foco permanece no registo atual.

  • Ao procurar o registo anterior ou seguinte, a procura não "embrulha" quando chega ao fim dos dados. Se não houver mais registos que correspondam aos critérios, não ocorrem erros e o foco permanece no registo atual. Para confirmar que foi encontrado um jogo, pode introduzir uma condição para a próxima ação, e fazer a condição igual aos critérios no argumento onde está.

  • Para executar a ação SearchForRecord num módulo VBA, utilize o método SearchForRecord do objeto DoCmd.

  • A ação macro SearchForRecord é semelhante à ação macro FindRecord, mas SearchForRecord tem funcionalidades de pesquisa mais poderosas. A ação macro FindRecord é usada principalmente para encontrar cordas, e duplica a funcionalidade da caixa de diálogo Find. A ação macro SearchForRecord utiliza critérios mais parecidos com os de um filtro ou de uma consulta SQL. A seguinte lista demonstra algumas coisas que pode fazer com a ação macro SearchForRecord:

    • Pode utilizar critérios complexos no argumento onde está, como

Descrição = "Bebidas" e CategoriaID = 11

  • Pode consultar os campos que estão na fonte de registo de um formulário ou relatório, mas que não são apresentados no formulário ou no relatório. No exemplo anterior, nem Description nem CategoryID devem ser apresentados no formulário ou no relatório para que os critérios funcionem.

  • Pode utilizar operadores lógicos, como <, >, E, ORe BETWEEN. A ação FindRecord apenas corresponde a cordas iguais, a começar ou a conter a cadeia que está a ser procurada.

Exemplo

A seguinte macro abre primeiro a tabela Categorias utilizando a ação OpenTable. A macro utiliza então a ação macro SearchForRecord para encontrar o primeiro registo na tabela onde o campo Descrição é igual a "Bebidas".

Ação

Argumentos

OpenTable

Nome do quadro: Categorias

Ver: Ficha técnica

Modo dados: Editar

SearchForRecord

Tipo de Objeto: Tabela

Nome do objeto: Categorias

Record: Primeiro

Onde condição: Descrição = "Bebidas"

Precisa de mais ajuda?

Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

×