Fórmula do Excel: Posição da 2ª, 3ª instância etc.

Índice

Fórmula genérica

=FIND("~",SUBSTITUTE(text,char,"~",instance))

Resumo

Para obter a posição da 2ª, 3ª, 4ª, etc., instância de um caractere específico dentro de uma string de texto, você pode usar as funções FIND e SUBSTITUTE.

No exemplo mostrado, a fórmula em E4 é:

=FIND("~",SUBSTITUTE(B4,"x","~",D4))

Explicação

Basicamente, essa fórmula usa o fato de que a função SUBSTITUTE entende "instância", fornecida como um quarto argumento opcional chamado "núm_instância". Isso significa que você pode usar a função SUBSTITUTE para substituir uma instância específica de um caractere em uma string de texto. Assim:

SUBSTITUTE(B4,"x","~",D4)

substitui apenas a 2ª instância (2 vem de D4) de "x" no texto em B4, com o caractere "~". O resultado é o seguinte:

100x15 ~ 50

Em seguida, FIND localiza o "~" dentro dessa string e retorna a posição, que é 7 neste caso.

Nota: usamos "~" neste caso apenas porque raramente ocorre em outro texto. Você pode usar qualquer caractere que sabe que não aparecerá no texto.

Artigos interessantes...