Se o texto que se quer uma parte for um endereço do tipo:
AL RIBEIRAO PRETO, 556, BELA VISTA, CEP 01331000
e queremos apenas o endereço até a segunda vírgula em uma listagem extensa de clientes.
Como elaborar a função?
Então…. primeira devemos observar o seguinte:
Para usarmos qualquer fórmula que extraia os valores de um texto, precisamos informar tamanho do texto que queremos retornar e/ou a posição inicial no texto onde partirá a extração.
Mas como ter essas infomações se cada endereço terá um tamanho? Não podemos dizer: retorne um texto com tamanho 20! Ou, extraia um texto a partir da posição 10! Pois esses dados serão variáveis e diferentes a cada linha.
Para solucionarmos a questão, devemos estabelecer algumas regras e definir fórmulas que nos retornem as informações referenciais de tamanho e posicionamento que necessitamos para a fórmula de extração de texto.
Como fazer isso? Vejamos.
Antes, leia este artigo sobre o assunto.
Com base no exemplo recebido (AL RIBEIRAO PRETO, 556, BELA VISTA, CEP 01331000), vamos definir nossa regra de padronização.
Todo endereço será composto de Rua, Número, Bairro, CEP.
Precisamos extrair apenas rua e número, portanto, o texto até a 2a. vírgula.
Sendo assim, já temos nosso padrão: Extrair o texto até a segunda vírgula.
O primeiro PROCURAR (PROCURAR(",";A1)+1) vai encontrar a posição da primeira vírgula e adicionar mais 1(uma) posição para iniciar a procura da 2a. vírgula.
O segundo PROCURAR (PROCURAR(",";A1;PROCURAR(",";A1)+1)-1) encontra a posição da 2a. vírgula e subtrai 1(uma) posição, pois, o seu resultado será informado como tamanho da string na fórmula ESQUERDA, ou seja, a vírgula não aparecerá, por isso, diminui um caracter.
A fórmula ESQUERDA utiliza o resultado da combinação das duas fórmulas acima como parâmetro do tamanho da cadeia de caracteres a retornar.
A fórmulá sempre localizará a segunda vírgula no texto e retornará como tamanho do texto a ser extraido. Dessa maneira, não importa a quantidade de caracteres possua determinado endereço, pois a fórmula sempre buscará o tamanho pela regra definida.
A fórmula poderá retornar erro caso não consiga identificar as duas vírgulas. Você pode tratar isso utilizando um SE e um ÉERROS. Veja como ficaria:
=SE(ÉERROS(ESQUERDA(A1;PROCURAR(",";A1;PROCURAR(",";A1)+1)-1));"";ESQUERDA(A1;PROCURAR(",";A1;PROCURAR(",";A1)+1)-1))
Entenda que a regra é você que define. Neste exemplo, utilizamos o identificador vírgula, na posição 2. Você pode usar outras regras, espaços, letras, pontos, primeira ocorrência no texto ou outra qualquer. Fica livre. Só adaptar a fórmula para cada caso.
Veja todos os posts que falam de: buscar, Células, Conteúdo, ESQUERDA, Excel, excel avançado, extrair, Fórmula