Muitas pessoas tem dúvidas de como é possível pegar informações específicas dentro de textos completos e fora dos padrões que atenderão suas necessidades naquele momento. Alguns exemplos disso são códigos de tabelas de produtos ou serviços, nomes de funcionários agrupados com suas matrículas em uma mesma célula, etc.
Exemplo 1
Exemplo 2
Pegando os dados do exemplo 1, podemos fazer assim:
Exemplo 1
Suponha que as informações contidas em cada código representem:
- nos dois primeiros algarismos, o número da loja;
- no algarismo do meio, o tipo da movimentação financeira (Receita ou Despesa); e
- nos três últimos, o identificador de grupo.
Caso queira descobrir a que loja pertence o movimento financeiro, se ele é receita ou despesa, ou a que grupo pertence, faça da seguinte maneira.
Na célula C1, digite “Cód Loja”;
Na célula D1, digite “Tipo de Movimentação”;
Na célula E1, digite “Grupo”;
Estes foram os títulos das colunas. Agora, para extrair os conteúdos desejados, digite:
Na célula C2: “=ESQUERDA(A2;2)” (SEM ASPAS, é claro!);
Na célula D2: “=EXT.TEXTO(A2;4;1)”;
E na célula E2: “=DIREITA(A2;3)”.
Com base no conteúdo presente na coluna A, na linha correspondente, extraímos na coluna C, o Código da Loja (12), já na coluna D teremos o Tipo de Movimentação, e na coluna E, a Descrição do Grupo. Copie as fórmulas nas demais células da lista e pronto. Já desmembramos todo o código em células distintas.
Exemplo 2
Vamos, agora, resolver o exemplo 2.
Pelo que já vimos anteriormente, fica fácil aplicarmos com os dados neste exemplo. Temos, neste caso, a matrícula e o nome, tudo junto numa mesma célula. O procedimento utiliza um conceito similar ao utilizado para escrever um número por extenso, só que bem mais simples, e apenas para identificar as partes. Geralmente, isso ocorre quando importamos dados de algum programa externo.
Enfim, queremos separar o nome do funcionário da matrícula do mesmo. Como fazer, então?
Primeiro, separamos a matrícula que, neste caso, compreendem 6 dígitos fixos.
Na célula B1, digite: “=ESQUERDA(A1;6)”
Já separamos a matrícula. Agora, vamos extrair o nome.
Na célula C1, digite: “=EXT.TEXTO(A1;8;NÚM.CARACT(A1)-7)”
Pronto. Faça o mesmo nas demais células da lista e está resolvido.
No final do artigo disponibilizei o arquivo para download, ok.
Um abraço a todos.
Termos aprendidos neste artigo:
ESQUERDA | Retorna o primeiro caractere ou caracteres em uma seqüência de caracteres de texto baseado no número de caracteres especificado por você.SintaxeESQUERDA(texto;núm_caract)Texto é a seqüência de caracteres de texto que contém os caracteres que você deseja extrair. Núm_caract especifica o número de caracteres que você deseja que ESQUERDA extraia. |
DIREITA | Retorna o último caractere ou caracteres em uma seqüência de caracteres de texto baseado no número de caracteres especificado por você.SintaxeDIREITA(texto;núm_caract)Texto é a seqüência de caracteres de texto que contém os caracteres que você deseja extrair. Núm_caract especifica o número de caracteres que você deseja que DIREITA extraia. |
EXT.TEXTO | Retorna um número específico de caracteres da seqüência de caracteres texto, começando na posição especificada, com base no número de caracteres especificado.SintaxeEXT.TEXTO(texto;núm_inicial;núm_caract)Texto é a seqüência de caracteres de texto que contém os caracteres que você deseja extrair. Núm_inicial é a posição do primeiro caractere que você deseja extrair como texto. O primeiro caractere em texto possui núm_inicial1, e assim por diante. Núm_caract especifica o número de caracteres que você deseja que EXT.TEXTO retorne do texto. |
NÚM.CARACT | Retorna o número de caracteres em uma seqüência de caracteres de texto.SintaxeNÚM.CARACT(texto)Texto é o texto cujo tamanho se deseja determinar. Os espaços contam como caracteres. |
caso o excel seja em ingles.. o esquerda é left; o dereita é rigth; e o ext.text qual é?
Use Mid.
Gostei muito, vou ter este site como referência.
Olá, gostei da elaboração do exemplo.
Mas se o texto que se quer uma parte for um endereço do tipo: AL RIBEIRAO PRETO, 556, BELA VISTA, CEP 01331000 e quer se apenas o endereço até a segunda vírgula em uma listagem de 6000 clientes, como elaborar a função?
Alexandre,
Postei um artigo explicando melhor:
https://www.exceldoseujeito.com.br/2011/10/20/extrair-parte-do-texto-de-uma-celula-com-valores-sem-formato-definido/
Sugestão: (admita que o endereço completo esteja na célula A1)
=ESQUERDA(A1;PROCURAR(“,”;A1;PROCURAR(“,”;A1)+1)-1)
Um Abraço
Artigo muito bom e que me ajudou muito.
Obrigado