Excel VBA Find
Quando usamos Find em uma planilha normal, pressionamos o atalho de teclado CTRL + F e digitamos os dados que precisamos encontrar e se não for o valor desejado vamos para a próxima correspondência, se houver muitas correspondências, é uma tarefa tediosa, mas quando usamos FIND no VBA, ele faz as tarefas para nós e nos dá a correspondência exata e leva três argumentos, um é o que encontrar, onde encontrar e onde olhar.
Antes de passarmos para o VBA e começarmos a usar a função find em macros, precisamos aprender primeiro o que é uma função find no Excel. No Excel normal, na guia Home no grupo de edição, podemos encontrar uma função find que é usada para encontrar uma string ou um valor em um intervalo de células ou planilha inteira.

Quando clicamos nisso, temos duas opções;
Um é simples de encontrar,

Podemos ver que também tem um modo de opções que abre outro recurso.

Ele faz o algoritmo de localização com quatro restrições, Find What, Within, Search e look in.
A segunda opção no excel é Localizar e substituir, que é usada quando encontramos uma string, mas o que substituí-la por qualquer outro valor,

Encontrar a sintaxe da função
Aprendemos acima o que é Encontrar no Excel básico. No VBA, escrevemos códigos manualmente, mas os recursos são os mesmos do Excel normal. Primeiro, vejamos a sintaxe.
Expression.Find (O que, olhando,….)
Se o valor que procuramos for encontrado com a função excel, ela retorna a célula onde o valor está, e se o valor não for encontrado, o objeto da função é definido como nada.
As expressões em macros são intervalos definidos, como intervalo 1 ou intervalo 2. O que é uma palavra-chave para o que desejamos pesquisar para um valor específico? Lookin é uma palavra-chave para o que estamos tentando pesquisar, seja um comentário, uma fórmula ou uma string. Da mesma forma, existem outras restrições na função Find, que são opcionais. O único campo obrigatório obrigatório é o valor que estamos tentando pesquisar.
Basicamente, o VBA descobre que o Excel tem um argumento obrigatório, que é o valor que queremos pesquisar. O resto das restrições são opcionais e existem muitas restrições na função find. A função Find é semelhante à função Find do Excel.
O parâmetro para a função find é o intervalo de células, como em qual intervalo queremos encontrar um valor. Pode ser algumas colunas ou células ou uma planilha inteira.
Exemplos
Exemplo 1
Suponha que nossos dados tenham os seguintes valores

Tentaremos encontrar “Aran” nos mesmos dados.
- Para escrever um código VBA, é necessário habilitar a aba do desenvolvedor no excel para poder escrever Códigos VBA.

- Começamos a escrever nosso código escrevendo o código a seguir, conforme mostrado abaixo,
DimFindS As String
Dim Rng As Range
FindS = InputBox (“Digite o valor que deseja pesquisar”)
Com Folhas (“Folha1”) .Range (“A: A”)

- O exemplo é o nome da função dado ao sub.
- Find é a string que queremos que o usuário que desejamos inserir para pesquisar.
- Rng é a variável que consideramos para o intervalo.
- Agora pedimos ao usuário para inserir o valor que se parece com a imagem abaixo,

- Agora vamos definir nossa função find no módulo.

- A função encontra o valor inserido pelo usuário no intervalo fornecido.
- Agora fechamos a função pelos seguintes argumentos.

- Agora, se executarmos nosso código primeiro, ele solicitará um prompt do usuário para um valor.

- Depois que o código é concluído, ele retorna a célula onde os dados foram encontrados.
Exemplo # 2
No exemplo acima, havia quatro nomes exclusivos, mas e se houvesse mais de um nome nos dados, como considerar os dados abaixo,

Podemos ver que o nome Aran é repetido duas vezes nos dados acima. Se o Excel precisar encontrar o nome Aran, ele o encontrará na célula A2 e parará, mas há outro valor semelhante ao de A2 na célula A6. Como buscar esse valor? Aí vem a sintaxe de Find (What, After) na ajuda.
Depois de definir a célula, após a qual referência, queremos pesquisar os dados.
Deixe-nos escrever o código para os dados acima.
- Lembre-se sempre de habilitar a guia do desenvolvedor a partir das opções e, em seguida, da faixa de opções de personalização no Excel para poder escrever o código em VBA.
- No VBA, obtemos objetos do Microsoft Excel, que é um módulo onde escrevemos os códigos.

- Anteriormente, estávamos trabalhando na folha 1; agora, estamos trabalhando na folha 2, então selecione a folha 2 para outro módulo e uma página em branco aparecerá.

- Agora comece a escrever o código definindo a função primeiro como SUB Sample2 () e pressione enter.

- Agora definimos nossa função; vamos começar a entrar na parte principal, que é a definição de nossas variáveis.

- Defina o que a variável Find deve ter,

- Selecione as folhas nas quais estamos trabalhando, que é a folha 2 neste exemplo,

- Agora encontraremos o texto que o usuário inserir após a célula A2, então definimos nossa função de localização como abaixo,

- Agora fechamos o código encerrando as condições with e if.

O que o código acima faz é pesquisar a string após a célula A2 e retornar a célula onde quer que ela seja encontrada.
Coisas para lembrar
- Em primeiro lugar, precisamos habilitar a guia do desenvolvedor para usar o VBA.
- Qual é o valor específico que precisamos encontrar?
- Se o valor não for encontrado, o objeto da função é definido como nada.