Neste artigo você aprenderá a retirar acentos e caracteres especiais no Excel.
Depois de alguns meses sem postar por motivos pessoais, retomo as atividades do blog, a intenção é que tenhamos uma nova postagem por semana e também o lançamento do Curso de Excel até o final do primeiro semestre de 2017.
Deixando de lado os planos para o futuro vamos falar sobre o presente, e nele temos um artigo muito interessante que poderá te ajudar muito.
Muitas vezes quando estamos realizando um cruzamento de dados entre bases diferentes necessitamos que estes dados estejam padronizados, e uma das ações que devemos fazer é retirar acentos e caracteres especiais dos dados para realizar os cruzamentos.
Função para retirar acentos e caracteres especiais no Excel
A função a seguir, programada em VBA é para ser utilizada no Excel, lhe ajudará a retirar quaisquer acentos ou caracteres especiais de uma célula que tenha texto.
Para usá-la, no Excel vá até o ambiente de desenvolvimento do VBA apertando ALT+F11.
Ou na aba Desenvolvedor > Visual Basic e em seguida em Inserir > Módulo.
No novo módulo, cole o código abaixo:
Function Acento(caract) 'Publicada em www.douglasgodoy.com.br 'Conheça meu canal no youtube.' 'https://www.youtube.com/c/douglasgodoybr?sub_confirmation=1 'Acentos e caracteres especiais que serão buscados no texto digitado 'Você pode definir outros caracteres nessa variável, mas ' precisará também colocar a letra correspondente em codiB codiA = "àáâãäèéêëìíîïòóôõöùúûüÀÁÂÃÄÈÉÊËÌÍÎÒÓÔÕÖÙÚÛÜçÇñÑ" 'Letras correspondentes para substituição codiB = "aaaaaeeeeiiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcCnN" 'Armazena em temp a string recebida temp = caract 'Loop que percorerá a palavra letra a letra For i = 1 To Len(temp) 'InStr buscará se a letra pertence ao grupo com acentos e se existir retornará a posição dela p = InStr(codiA, Mid(temp, i, 1)) 'Substitui a letra de indice i em codiA pela sua correspondente em codiB If p > 0 Then Mid(temp, i, 1) = Mid(codiB, p, 1) Next 'Retorna o texto sem o acento ou caractere especial Acento = temp End Function
Esta função armazena o texto em uma variável, e através de um Loop percorre a palavra letra a letra, quando encontra um dos caracteres listados na matriz de acentos ele substitui o carácter pelo outro que é correspondente e esta na mesma posição na matriz B.
Sabendo-se como a função funciona e colando a mesma no novo módulo, é possível usar a função.
Digite em qualquer célula “=acentos(célula)”, =acentos(“PALAVRA COM ACENTO”) para retirar os acentos, ela pode ser utilizada como uma função qualquer do Excel usando a sintaxe =Acentos(CELULA), como no exemplo abaixo:

Esta é uma forma simples e rápida que temos de retirar os acentos e caracteres especiais de um texto.
Caso conheça outra forma compartilhe conosco.
Veja no link abaixo outro artigo bacana também…
http://douglasgodoy.com.br/vba-aprenda-criar-formulario-de-cadastro/
Um abraço!
Douglas Godoy


Deixe um comentário