TEXTOANTES e TEXTODEPOIS no Excel: separar textos

Atualizado em 10. November 2026 · Equipe Exercícios Excel

O TEXTOANTES devolve o que vem antes de um separador e o TEXTODEPOIS, o que vem depois. Exemplo: =TEXTOANTES(A2;"@") pega o usuário do e-mail.

Sintaxe

=TEXTOANTES(texto; delimitador; [núm_instância])
texto
A célula com o texto.
delimitador
O separador, entre aspas: "@", " ", "-".
núm_instância
Opcional: qual ocorrência usar. -1 conta do fim.

Pratique agora

Exercício 1 de 2Correção na hora, sem cadastro

Em B5, pegue o primeiro nome de A5 (o texto antes do primeiro espaço).

B5
fx
A
B
C
D
E
F
1
Contato
Nome
Domínio
2
pedro@lojaboa.com.br
3
4
Nome completo
Primeiro nome
5
Fernanda Costa Lima
6
7
8

Primeiro e último nome

  • Primeiro nome: =TEXTOANTES(A5;" ")
  • Último sobrenome: =TEXTODEPOIS(A5;" ";-1)

Versões do Excel

Essas funções existem no Excel 365 e no Excel na Web. Nas versões antigas, use ESQUERDA com PROCURAR.

Passo a passo

Escreva =TEXTOANTES( e clique na célula. Depois, entre aspas, o separador: um espaço, um @, um traço. Feche o parêntese. O resultado é tudo o que vem antes da primeira vez que o separador aparece. A TEXTODEPOIS funciona igual e traz tudo o que vem depois.

=TEXTODEPOIS(A2;"@")

Escolher qual ocorrência

O terceiro argumento diz qual vez do separador usar. Números negativos contam do fim.

  • =TEXTOANTES(A5;" ";2): as duas primeiras palavras
  • =TEXTODEPOIS(A5;" ";-1): a última palavra
  • =TEXTOANTES(A5;" ";-1): tudo menos a última palavra

Exemplo do dia a dia: nome e sobrenome

Com um nome completo, como "Fernanda Costa Lima", o primeiro nome é o texto antes do primeiro espaço e o sobrenome principal costuma ser a última palavra.

  • Primeiro nome: =TEXTOANTES(A2;" ")
  • Último sobrenome: =TEXTODEPOIS(A2;" ";-1)

Com essas duas colunas, uma mensagem começa com "Olá, Fernanda" e uma lista de presença fica em ordem de sobrenome.

Exemplo do dia a dia: texto entre dois sinais

Para pegar o que está entre parênteses, junte as duas funções: primeiro tudo depois do "(", e daí tudo antes do ")".

=TEXTOANTES(TEXTODEPOIS(A2;"(");")")

Com "Notebook (Dell)", o resultado é "Dell".

Quando o separador não existe

Se o separador não aparece, o resultado é #N/D. O quinto argumento evita isso: com 1, o Excel trata o fim do texto como um separador. Ou use o sexto argumento para dizer o que mostrar.

=TEXTOANTES(A2;" ";;;;A2)

Assim, um nome sem espaço aparece inteiro, em vez de erro.

Nas versões antigas

Sem TEXTOANTES, use ESQUERDA com PROCURAR: =ESQUERDA(A2;PROCURAR(" ";A2)-1). Para TEXTODEPOIS, use EXT.TEXTO com PROCURAR: =EXT.TEXTO(A2;PROCURAR("@";A2)+1;100).

No Excel em inglês e no Google Planilhas

No Excel em inglês, as funções se chamam TEXTBEFORE e TEXTAFTER. No Google Planilhas, elas não existem com esses nomes; use ESQUERDA e EXT.TEXTO com PROCURAR, ou a função SPLIT.

Exemplo do dia a dia: cidade e estado

Endereços terminam com "Curitiba - PR". A cidade é o texto antes do último traço e o estado é o texto depois dele. Com -1, as funções usam o último traço, mesmo que o nome da cidade tenha traço também.

  • Cidade: =ARRUMAR(TEXTOANTES(A2;"-";-1))
  • Estado: =ARRUMAR(TEXTODEPOIS(A2;"-";-1))

Exemplo do dia a dia: pasta e arquivo

Num caminho como "C:\Vendas\2027\marco.xlsx", o nome do arquivo vem depois da última barra. A TEXTODEPOIS com -1 pega "marco.xlsx", e a TEXTOANTES com o ponto tira a extensão.

=TEXTOANTES(TEXTODEPOIS(A2;"\";-1);".")

Erros comuns

  • #N/D: o separador não aparece no texto; use o argumento de "se não encontrado"
  • #NOME?: o Excel não é 365 nem Web; use ESQUERDA com PROCURAR
  • Espaços sobrando no resultado: o separador era " - " e você usou só "-"; use ARRUMAR por fora ou inclua os espaços no separador

TEXTOANTES numa coluna inteira

No Excel 365, uma fórmula só pode tratar a coluna toda: =TEXTOANTES(A2:A500;" ") devolve o primeiro nome de todas as linhas de uma vez. O resultado se espalha para baixo. Se uma linha não tiver espaço, ela mostra #N/D, a não ser que você use o argumento de "se não encontrado". Isso economiza tempo em listas grandes, porque não é preciso arrastar a fórmula.

Exemplo do dia a dia: código antes da descrição

Uma lista de produtos vem como "P-103 | Sabão em pó". O código fica antes da barra vertical. A TEXTOANTES pega o código e a TEXTODEPOIS pega a descrição. Use ARRUMAR por fora para tirar o espaço em volta da barra.

=ARRUMAR(TEXTOANTES(A2;"|"))

Erros comuns

#N/D

O separador não existe no texto.

Perguntas frequentes

TEXTOANTES funciona com quebra de linha?

Sim. Use CARACT(10) como separador: =TEXTOANTES(A2;CARACT(10)) pega a primeira linha da célula.

Qual a diferença entre TEXTOANTES e ESQUERDA?

A ESQUERDA pega um número fixo de caracteres. A TEXTOANTES pega até um separador, então funciona com textos de tamanhos diferentes.

Como separar em várias colunas de uma vez?

No Excel 365, use DIVIDIRTEXTO: =DIVIDIRTEXTO(A2;" ") coloca cada palavra numa coluna.

TEXTOANTES funciona no Excel 2021?

Não. Ela existe no Excel 365 e no Excel na Web.

TEXTOANTES diferencia maiúsculas?

Sim, por padrão. O quarto argumento com 1 faz ignorar: =TEXTOANTES(A2;" x ";;1).

Dá para usar mais de um separador?

Sim, entre chaves: =TEXTOANTES(A2;{" ";"-"}) para no primeiro espaço ou traço.

E para separar em várias colunas?

Use DIVIDIRTEXTO no Excel 365, ou Dados > Texto para Colunas.

Veja também

Treine TEXTOANTES e TEXTODEPOIS até ficar fácil

A lição "TEXTVOR und TEXTNACH" tem 5 exercícios com correção na hora.

Começar grátis