=LEFT(A2,3) retorna os 3 primeiros caracteres do texto em A2, =RIGHT(A2,1) o último caractere e =MID(A2,5,4) retorna 4 caracteres a partir do 5º. No Excel em português essas funções se chamam ESQUERDA (LEFT em inglês), DIREITA (RIGHT) e EXT.TEXTO (MID), e você também pode digitar as fórmulas em português na tabela, com ponto e vírgula: =ESQUERDA(A2;3), =DIREITA(A2;1), =EXT.TEXTO(A2;5;4). Para o código NYC-2041-B, o resultado é NYC, B e 2041.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Code | City | Number | Size |
| 2 | NYC-2041-B | NYC | 2041 | B |
| 3 | LAX-1187-A | LAX | 1187 | A |
| 4 | SFO-3302-C | SFO | 3302 | C |
| 5 | BOS-0915-B | BOS | 0915 | B |
=ESQUERDA(A2;3)Clique em C2 e mude o 5 para 4: o resultado agora começa no hífen. Espaços e pontuação contam como caracteres, e o primeiro caractere é a posição 1.
Sintaxe
=LEFT(text, [num_chars])
=RIGHT(text, [num_chars])
=MID(text, start_num, num_chars)
num_charsé opcional na ESQUERDA e na DIREITA, e o padrão é 1.- Se você pede mais caracteres do que existem, recebe o texto inteiro, não um erro.
=ESQUERDA("Ann";10)éAnn. - Uma quantidade negativa dá #VALOR! (
#VALUE!em inglês; a tabela mostra os nomes de erro em inglês), por exemplo=ESQUERDA(A2;NÚM.CARACT(A2)-3)em um texto com menos de 3 caracteres.
Quando o tamanho varia: ESQUERDA, DIREITA e EXT.TEXTO com PROCURAR
Os códigos raramente têm todos o mesmo tamanho. Use a PROCURAR (FIND em inglês) para localizar o separador e deixe a fórmula calcular a quantidade:
| A | B | C | |
|---|---|---|---|
| 1 | Code | Before the dash | After the dash |
| 2 | NY-2041 | NY | 2041 |
| 3 | BOSTON-15 | BOSTON | 15 |
| 4 | LA-30087 | LA | 30087 |
=ESQUERDA(A2;PROCURAR("-";A2)-1)PROCURAR("-";A2)retorna a posição do hífen, 3 emNY-2041.ESQUERDA(A2;3-1)pega os 2 caracteres antes dele.EXT.TEXTO(A2;3+1;50)começa depois do hífen e pega até 50 caracteres, mais do que qualquer código tem, então chega até o fim.
No Microsoft 365 e no Excel 2024, TEXTOANTES(A2;"-") e TEXTODEPOIS(A2;"-") dão os mesmos resultados com uma fórmula mais curta; veja separar texto.
Remover os primeiros ou os últimos caracteres
Para descartar caracteres, fique com o resto. A NÚM.CARACT (LEN em inglês) dá o tamanho total, e você subtrai o que quer remover:
| A | B | C | |
|---|---|---|---|
| 1 | Text | Without first 3 | Without last 2 |
| 2 | ID-58210 | 58210 | ID-582 |
| 3 | ID-7734 | 7734 | ID-77 |
| 4 | ID-120 | 120 | ID-1 |
=DIREITA(A2;NÚM.CARACT(A2)-3)| A | B | |
|---|---|---|
| 1 | Card | Last four |
| 2 | 4111 2222 3333 9876 |
Sua vez: Em B2, retorne os 4 últimos caracteres do número do cartão em A2.
Extrair um número de um código
ESQUERDA, DIREITA e EXT.TEXTO sempre retornam texto, mesmo quando os caracteres são dígitos. Dígitos em texto parecem números, mas a SOMA pula esses valores, e é por isso que um total de números extraídos pode dar 0:
| A | B | C | |
|---|---|---|---|
| 1 | Order | MID (text) | VALUE(MID) |
| 2 | SO-0120-X | 0120 | 120 |
| 3 | SO-0345-Y | 0345 | 345 |
| 4 | SO-1000-Z | 1000 | 1000 |
| 5 | Total | 0 | 1465 |
=EXT.TEXTO(A2;4;4)A coluna B mostra 0120 com o zero à esquerda porque continua sendo texto, e B5 soma 0. A coluna C converte cada parte com VALOR e o total fica certo. =--EXT.TEXTO(A2;4;4) e =EXT.TEXTO(A2;4;4)*1 convertem do mesmo jeito; veja texto para número para mais.
| A | B | |
|---|---|---|
| 1 | Item | Quantity |
| 2 | PK-045-BAG |
Sua vez: A quantidade fica entre os dois hífens e sempre tem 3 dígitos. Em B2, extraia a quantidade como um número que você consegue somar.
Erro comum: ESQUERDA em uma data
Uma data é armazenada como número, então =ESQUERDA(B2;4) na data 2026-03-15 não retorna 2026: retorna 4609, os 4 primeiros dígitos de 46096, o número de série por trás da data.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Event | Date | LEFT(date,4) | Year |
| 2 | Launch | 2026-03-15 | 4609 | 2026 |
| 3 | 2026 |
=ESQUERDA(B2;4)Use ANO(B2) para o ano como número, ou TEXT(B2,"yyyy") (forma em inglês da TEXTO) para o ano como texto. MÊS, DIA e a TEXTO com "mmm" ou "dd" cobrem as outras partes.
Perguntas frequentes
Como extrair os N primeiros caracteres no Excel?
Use a ESQUERDA com a quantidade: =ESQUERDA(A2;3) retorna os 3 primeiros caracteres. Sem o segundo argumento, =ESQUERDA(A2) retorna só o primeiro caractere.
Como remover os primeiros ou os últimos caracteres no Excel?
Fique com o resto usando NÚM.CARACT: =DIREITA(A2;NÚM.CARACT(A2)-3) remove os 3 primeiros caracteres e =ESQUERDA(A2;NÚM.CARACT(A2)-2) remove os 2 últimos.
Por que não consigo somar os números que a EXT.TEXTO retorna?
ESQUERDA, DIREITA e EXT.TEXTO sempre retornam texto, e a SOMA pula texto. Transforme o resultado em número com VALOR ou com dois sinais de menos: =VALOR(EXT.TEXTO(A2;5;4)) ou =--EXT.TEXTO(A2;5;4).
Como pegar o texto antes de um caractere no Excel?
Encontre a posição do caractere e use um a menos: =ESQUERDA(A2;PROCURAR("-";A2)-1) retorna tudo antes do primeiro hífen. No Microsoft 365, =TEXTOANTES(A2;"-") faz o mesmo.