terça-feira, 8 de janeiro de 2013

Dr. Planilha: Como tirar pontos e traços do CPF no #Excel

Um leitor do blog postou uma dúvida recentemente sobre formatação de números de CPF. Na verdade, ele desejava remover todos os caracteres diferentes de números, no caso pontos e hífen, mantendo apenas os números.

Segue a pergunta:
"A minha planilha tem uma coluna de números de CPF.
Gostaria de tirar os pontos e o traço de todos os números da coluna.
Como faço isso?"
Costumeiramente eu solucionaria essa necessidade usando uma fórmula para substituir os caracteres "." e "-" por <vazio>, o que resulta em uma sequência de apenas números. A seguir descrevo como ficaria essa fórmula.

A ideia é utilizar a fórmula chamada "SUBSTITUIR" para encontrar os caracteres indesejados, substituindo-os por <vazio>. Essa fórmula pede 3 parâmetros obrigatórios e 1 opcional, para nosso problema não precisaremos do parâmetro opcional.

Dissecando a função:

SUBSTITUIR(texto;texto_antigo;novo_texto)

texto: nesse parâmetro informaremos o texto para o qual desejamos remover os caracteres indesejados;
texto_antigo: entre aspas, informaremos que carácter pretendemos remover do texto completo;
texto_novo: entre aspas, informaremos que carácter substituirá o indesejado

Um exemplo de como isso ficaria para o CPF 999.999.999-99:

CÉLULA A1-> 999.999.999-99
CÉLULA B1-> =SUBSTITUIR(A1;".";"")
CÉLULA C1-> =SUBSTITUIR(B1;"-";"")

RESULTADO: 99999999999

Funciona, mas convenhamos, resolver essa fórmula em duas células não é lá muito elegante. Para simplificar a solução em uma única célula, faremos uma "união" das duas fórmulas "SUBSTITUIR". A solução ficaria da seguinte forma:

CÉLULA A1-> 999.999.999-99
CÉLULA C1-> =SUBSTITUIR(SUBSTITUIR(A1;".";"");"-";"")

Trocando em miúdos, o que fiz foi trocar o "B1" que aparecia na fórmula da célula C1 pela fórmula que usamos no exemplo anterior na célula B1. Ou seja, primeiro removemos os pontos e depois os hifens. Se houvesse um terceiro carácter diferente, usaríamos uma sequência de 3 fórmulas "SUBSTITUIR" encadeadas, cada uma retirando um carácter diferente.

Nosso exemplo envolve CPF, no entanto, poderíamos aplicar essa mesma regra para qualquer situação do dia-a-dia, como remover parênteses, hifens e espaços em branco de números de telefone. Essa é uma solução simples para uma necessidade que envolva poucas variações de caracteres indesejados. Quando tivermos muitos caracteres diferentes para remover, o melhor é adotar uma solução diferente, um pouco mais complexa e trabalhosa de se elaborar, mas que atenderia uma variação ilimitada de caracteres indesejados.

Os comentários estão à disposição para tirar dúvidas ou para postar exemplos diferentes para os quais essa solução possa não se aplicar integralmente.

Um grande abraço do Dr. Planilha!

Related Posts Plugin for WordPress, Blogger...