Extraia texto antes e depois de um caractere no excel

No Excel, você pode escrever fórmulas para extrair texto antes ou depois de um caractere específico. E neste tutorial aprenderemos como escrever essas fórmulas.

Extraia o texto após um caractere

Precisamos usar TRIM, RIGHT, SUBSTITUTE, REPT e LEN nesta fórmula. E no exemplo abaixo, temos valores de duas palavras nos valores e o caractere entre eles.

snippet-texto-depois-e-antes-do-caractere
 =TRIM(RIGHT(SUBSTITUTE(A1,B1,REPT(" ",LEN(A1))),LEN(A1))) =TRIM(RIGHT(SUBSTITUTE(original_text,character,REPT(" ",LEN(original_text))),LEN(original_text)))

Para entender esta fórmula, você precisa dividi-la em várias partes:

Na primeira parte, temos SUBSTITUTE(A1,B1,REPT(" ",LEN(A1))) . Isso faz parte da fórmula que substitui o caractere (,) pelo número de espaços equivalente ao comprimento do caractere.

fórmula para extrair texto

Você pode ver que há um espaço entre “Conselheiro Excel” em vez da vírgula.

Na segunda parte, =TRIM(RIGHT("Excel Advisor",LEN(A1))) que extrai o texto do lado direito do texto e depois o corta para remover o espaço extra.

Instâncias de personagens diferentes?

Ao trabalhar com dados, você pode ter várias instâncias do personagem, e a fórmula acima pode não ajudá-lo a lidar com isso. Neste caso, você deve usar a fórmula abaixo.

extrair texto quando tiver instâncias de vários caracteres
 =IF(LEN(A1)-LEN(SUBSTITUTE(A1,B1,""))<=1,"",MID(SUBSTITUTE(A1,B1,"^^",C1),FIND("^^",SUBSTITUTE(A1,B1,"^^",C1))+2,LEN(A1)))

Com esta fórmula, você precisa especificar o caractere para extrair o texto e, em seguida, a instância do caractere começa.

especificar caractere para extrair texto

A fórmula acima é complexa, mas funciona perfeitamente. O código para esta fórmula é a função SUBSTITUTE que ajuda a obter o segundo ou enésimo instante do caractere e então você pode substituir esse instante por um “^^” que ajuda ainda mais na extração do texto.

Mas você também pode usar a nova função TEXTAFTER (OFFICE 365), que tem todas as opções para obter texto após um caractere sem entrar em uma fórmula complexa como acima.

função textafter

Você deve especificar o caractere e a instância na função.

especificar caractere e instância

Extraia texto antes de um caractere

Você pode usar a fórmula abaixo para colocar o texto antes de um caractere.

extração de texto antes do caractere

Esta é a fórmula exata que usamos para obter o texto após um caractere. Em vez de usar DIREITA, você deve usar ESQUERDA. Para obter o texto esquerdo (frente).

 =TRIM(LEFT(SUBSTITUTE(A2,B2,REPT(" ",LEN(A2))),LEN(A2)))

E esta fórmula funciona exatamente como esta fórmula. Consulte-o para torná-lo compreensível.

Diferentes instâncias de personagens

Existem duas maneiras de obter o texto antes (ou depois) de um caractere.

 =IF(LEN(A2)-LEN(SUBSTITUTE(A2,B2,""))<=1,"",LEFT(SUBSTITUTE(A2,B2,"^^",C2),FIND("^^",SUBSTITUTE(A2,B2,"^^",C2))-1))

Pode ser utilizado em qualquer versão do Excel; você pode especificar os caracteres e a instância para obter o texto.

fórmula para extrair texto antes do caractere

Mas se você estiver usando Excel (Office 365), não precisará usar esta fórmula complexa. Em vez disso, você pode usar a função TEXTBEFORE.

função textbefore

Obtenha o arquivo Excel

Download

Adicione um comentário

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