Extrair Texto da Célula – Excel e Google Planilhas
Este tutorial vai demonstrar como extrair texto de uma célula no Excel e no Google Planilhas.
Extrair Texto da Esquerda
Você pode extrair texto do lado esquerdo de uma célula no Excel usando a função ESQUERDA. Basta fornecer o texto e digitar o número de caracteres a serem retornados.
Entretanto, isso só extrairá um número fixo de caracteres. Você pode ver acima que algumas temperaturas de cozimento foram extraídas corretamente (ex. 300), mas outras não (ex. 95F). Para criar uma fórmula dinâmica que funcione em todos os cenários, podemos usar a função NÚM.CARACT, combinada com a função ESQUERDA.
Função NÚM.CARACT – Contar Caracteres em uma Célula
Use a função NÚM.CARACT para contar o número de caracteres na célula:
=NÚM.CARACT(C3)
Função ESQUERDA – Mostrar Caracteres da Esquerda
Em seguida, crie uma nova função ESQUERDA que extraia um número de caracteres determinado pela função ESQUERDA acima.
=ESQUERDA(C3; E3-1)
A combinação dessas funções tem a seguinte forma:
=ESQUERDA(C3;NÚM.CARACT(C3)-1)
Funções DIREITA e NÚM.CARACT
Da mesma forma, também podemos extrair caracteres da direita de uma célula usando a função DIREITA para retornar um determinado número de caracteres da direita.
=DIREITA(B3;NÚM.CARACT(B3)-C3)
Funções EXT.TEXTO e LOCALIZAR
Na próxima seção, usaremos as funções LOCALIZAR e EXT.TEXTO para extrair caracteres do meio de uma cadeia de texto.
=EXT.TEXTO(B3;LOCALIZAR(" ";B3)+1;999)
Função LOCALIZAR
Primeiro, usamos a função LOCALIZAR para encontrar a posição do espaço em branco (” “) entre o primeiro e o último nome.
=LOCALIZAR(" "; B3)
Função EXT.TEXTO
Em seguida, usamos a função EXT.TEXTO para retornar todos os caracteres após o espaço.
- Adicionamos 1 ao resultado da fórmula anterior para que retornar o primeiro caractere após o espaço.
- Usamos o número grande 999 para retornar todos os caracteres.
=EXT.TEXTO(B3; C3+1; 999)
A combinação dessas duas funções nos dá a fórmula original para o sobrenome.
=EXT.TEXTO(B3;LOCALIZAR(" ";B3)+1;999)
Extrair Texto Antes ou Depois de um Caractere Específico
Você também pode usar as funções ESQUERDA, DIREITA, NÚM.CARACT e LOCALIZAR para extrair o texto antes ou depois de um caractere específico. Nesse caso, separaremos o nome e o sobrenome.
Extrair Texto Antes do Caractere
Primeiro, podemos usar a função LOCALIZAR para encontrar a posição da vírgula na cadeia de caracteres de texto.
=LOCALIZAR(","; B3)
Em seguida, podemos usar a função ESQUERDA para extrair o texto antes da posição da vírgula.
- Precisamos subtrair 1 da posição da vírgula para não incluir a vírgula em nosso resultado.
=ESQUERDA(B3; LOCALIZAR(",";B3)-1)
A combinação dessas duas funções nos dá a fórmula original para o sobrenome.
Extrair Texto Após o Caractere
=DIREITA(B3;NÚM.CARACT(B3)-LOCALIZAR(",";B3)-1)
Além de usar a função LOCALIZAR mais uma vez, também usamos a função NÚM.CARACT em conjunto com a função DIREITA para extrair o texto após um caractere específico.
A função NÚM.CARACT serve para obter o comprimento do texto em B3, enquanto a função LOCALIZAR é novamente usada para encontrar a posição da vírgula. Em seguida, usamos a função DIREITA para extrair os caracteres após a vírgula na cadeia de texto.
Extrair Texto do Meio da Cadeia de Caracteres de Texto
A seguir vamos discutir como extrair texto do meio de uma cadeia de caracteres de texto
Para extrair texto do meio de uma cadeia de caracteres de texto, podemos usar as funções DIREITA, LOCALIZAR e NÚM.CARACT para obter o texto do lado direito da cadeia de caracteres e, em seguida, usar as funções EXT.TEXTO e NÚM.CARACT para obter o texto no meio. Também incorporaremos a função ARRUMAR para cortar os espaços em ambos os lados da cadeia de caracteres de texto.
=DIREITA(B3;NÚM.CARACT(B3)-LOCALIZAR(" ";B3)-NÚM.CARACT(ARRUMAR(EXT.TEXTO(B3;LOCALIZAR(" ";B3;1)+1;LOCALIZAR(" ";B3;
LOCALIZAR(" ";B3;1)+1)-LOCALIZAR(" ";B3;1))))-1)
Essa fórmula só funcionará se houver mais de um espaço na cadeia de texto. Se houver apenas um espaço, será retornado um erro com #VALOR.
Para resolver esse problema, para nomes sem nomes do meio ou iniciais, podemos usar a fórmula original usando as funções EXT.TEXTO e LOCALIZAR.
=EXT.TEXTO(B3;LOCALIZAR(" ";B3)+1;999))
Podemos criar uma única fórmula que use as duas técnicas para lidar com todas as situações com a função SEERRO. (A função SEERRO executa um cálculo; se esse cálculo resultar em um erro, outro cálculo será executado)
=SEERRO(DIREITA(B3;NÚM.CARACT(B3)-LOCALIZAR(" ";B3)-NÚM.CARACT(ARRUMAR(EXT.TEXTO(B3;
LOCALIZAR(" ";B3;1)+1;LOCALIZAR(" ";B3;LOCALIZAR(" ";B3;1)+1)-LOCALIZAR(" ";B3;1))))-1);
DIREITA(B3;NÚM.CARACT(B3)-LOCALIZAR(" ";B3)))
Em seguida, podemos usar as funções EXT.TEXTO e NÚM.CARACT para obter o nome do meio.
=EXT.TEXTO(B3;NÚM.CARACT(C3)+1;NÚM.CARACT(B3)-NÚM.CARACT(C3&D3))
Extrair texto da célula no Google Planilhas
Todos os exemplos acima funcionam da mesma forma no Google Planilhas.