![](https://cdn.wiki-base.com/1328587/excel_formula_remove_text_by_variable_position__2.png.webp)
Fórmula genérica
=REPLACE(text,start,FIND(marker,text)+1,"")
Resumo
Para remover texto de uma célula, quando o texto está em uma posição variável, pode-se usar uma fórmula baseada na função REPLACE, com ajuda da função FIND. No exemplo mostrado, a fórmula em C6 é:
=REPLACE(B6,1,FIND(":",B6)+1,"")
que remove todo o texto até e incluindo os dois pontos (:) e o espaço seguinte.
Explicação
A função REPLACE substituirá o texto pela posição. Você pode usar REPLACE para remover texto, fornecendo uma string vazia ("") para o argumento "novo_texto".
Neste caso, queremos remover os rótulos que aparecem dentro do texto. Os rótulos variam em comprimento e incluem palavras como "Marca", "Modelo", "Economia de combustível" e assim por diante. Cada rótulo é seguido por dois pontos e um espaço. Podemos usar os dois pontos como um "marcador" para descobrir onde termina o rótulo.
Trabalhando de dentro para fora, usamos a função FIND para obter a posição dos dois pontos no texto e, em seguida, adicionamos 1 para levar em consideração o espaço que segue os dois pontos. O resultado (um número) é conectado à função REPLACE para o argumento "num_chars", que representa o número de caracteres a serem substituídos.
A função REPLACE então substitui o texto de 1 a "dois pontos + 1" por uma string vazia (""). No exemplo mostrado, a solução se parece com esta:
=REPLACE(B6,1,FIND(":",B6)+1,"") =REPLACE(B6,1,6,"") =2016