Como Localizar Palavras em um Texto no Access

Você alguma vez precisou procurar uma palavra em um texto em uma planilha do Excel por exemplo? Se você trabalha com as ferramentas do Office, certamente esta operação não é muito nova para você. É por isso que este artigo Como Localizar Palavras em um Texto, vai te ajudar e muito aqui no Access.

Para exemplificar nosso conteúdo, imagine uma tabela de serviços de manutenção que você identificou para ser realizado e dentro destes serviços você precise identificar quantos são relacionados a “PINTURA”. O idel é que existisse uma coluna que trouxesse a natureza do serviço pelo menos, mais a maioria dos dos softwares de manutenção, não categorizam os serviços desta forma, infelizmente.

Para que possamos verificar esta particularidade que é identificar todos os serviços relacionados a “Pintura”, devemos criar uma consulta com um campo calculado e colocar a seguinte sintaxe:

ServiçoDePintura: EmSeq(1;[Atividade];"Pintura";"Sim")

Vamos detalhar melhor esta função, blz?

O nome “ServicoDePintura” é o nome da coluna que irá aparecer na consulta. Ela está associada a Função EmSeq, que  retorna a posição de um caracter, que geralmente é uma vírgula, um ponto, ou um espaço. Esta função possui 4 argumentos:

1º início: Que é o número de onde a contagem irá partir. Como assim? para a função lhe informar qual a posição de um caracter ele precisa começar a contar de algum lugar não é verdade? Então você vai informar onde ele vai começar, se vai ser na letra 1, na letra 2, e assim por diante;

2º cadeia de caracteres:  É a coluna onde a função irá procurar, 

3º correspondênciadeseq: que é o valor procurado, como citado anteriormente pode ser uma vígula, um ponto, ou um espaço.E por último, e no nosso caso o menos importante; 

4º comparar: Que é opcinal, e não usaremos no nosso exemplo, mas, este critério especifíca um tipo de comparação por sequencia). A função é exibida da seguinte forma:

Ou seja, se a palavra “Pintura” estiver na frase, a função vai me retornar um número que será maior ou igual a 1, conforme resultado abaixo:

Como podemos perceber esta lista possui mais de 6000 registros, agora para concluir o nosso trabalho, precisamos CONTAR quantos serviços de pintura há nessa base.

Para isso, vamos adicionar mais um campo calculado e criar mais uma função

Pintura: SeImed([ServiçoDePintura]>0;"Sim";"Não")

Já nesta nova função, vamos utilizar o apoio da função SEIMED, que é igual ao SE() do Excel. Caso a coluna “ServiçoDePintura” retorne um valor maior que zero(0), a função retornará “Sim”, caso contrário retornará “Não”.

Agora fica mais fácil para identificarmos o total de serviços de pintura. Primeiramente devemos salvar esta consulta com o nome qryIdentificaPintura. Após isso, vamos criar mais uma consulta com base nesta que acabamos de salvar.

Assim vamos trazer nesta consulta a coluna Pintura e vamos contar a coluna ID, lembranco que a botão de AUTOSOMA deve estar ativo, para que possamos criar consultas agrupadas

Isso retornará o seguinte resultado:

Concluimos que de uma base de 6344 serviços, 5378 são relacionados a pintura e 966 não são relacionados

Curso de Access VBA Completo: Do Básico ao Avançado.

Quer aprender a programar no Access? Clique na imagem abaixo:

Se você quiser aprender mais sobre como usar a Função de Contagem no SQL do Access ou tiver alguma dúvida, não hesite em deixar um comentário abaixo. Estamos aqui para ajudar!

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *