Sejam bem-vindos, leitores do Excel 24 Horas! Hoje, vamos abordar uma questão muito comum no mundo do Excel: Como remover Acentos e Caracteres Especiais no Excel.
Aprenderemos a criar uma função personalizada em VBA que nos permitirá simplificar textos de maneira prática e rápida em nossas planilhas.
Introdução
Quando trabalhamos com dados em uma planilha do Excel, muitas vezes nos deparamos com textos que contêm acentos, cedilhas ou outros caracteres especiais. Em alguns cenários, precisamos normalizar esses textos, removendo esses elementos para facilitar a comparação, classificação ou outras operações.
Embora o Excel ofereça algumas funções de texto internas, como “SUBSTITUIR” e “SUBSTITUIR POR”, criar uma função personalizada nos permitirá ter mais flexibilidade e controlar o processo de remoção de caracteres especiais de acordo com nossas necessidades específicas.
Passo a Passo
1. Acesso ao Editor VBA
Antes de começarmos, é necessário acessar o Editor VBA do Excel. Pressione “Alt + F11” ou, no menu “Desenvolvedor”, clique em “Visual Basic”.
2. Criação da Função
Dentro do Editor VBA, clique com o botão direito sobre “VBAProject (SeuArquivo.xlsm)” no painel esquerdo e selecione “Inserir” -> “Módulo” para criar um novo módulo.
3. Desenvolvimento da Função
Vamos criar a função personalizada “RemoverAcentos” para simplificar o texto, removendo acentos, cedilhas e outros caracteres especiais.
Imagem do código no Editor
Código para copiar
Function RemoverAcentos(texto As String) As String
Dim textoSemAcentos As String
Dim i As Integer
Dim c As String * 1
' Tabela de caracteres especiais a serem removidos
Const caracteresEspeciais As String = "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿ"
Const caracteresSubstitutos As String = "AAAAAAACEEEEIIIIDNOOOOOOUUUUYBaaaaaaaceeeeiiiidnoooooouuuuyy"
textoSemAcentos = texto
' Loop para percorrer cada caractere do texto
For i = 1 To Len(caracteresEspeciais)
' Obtem um caractere especial da tabela
c = Mid(caracteresEspeciais, i, 1)
' Substitui o caractere especial pelo caractere correspondente na tabela de substitutos
textoSemAcentos = Replace(textoSemAcentos, c, Mid(caracteresSubstitutos, i, 1))
Next i
' Retorna o texto sem acentos e caracteres especiais
RemoverAcentos = textoSemAcentos
End Function
4. Explicação da Função
- Recebemos o texto desejado como argumento da função.
- Criamos uma variável “textoSemAcentos” para armazenar o texto após a remoção dos caracteres especiais.
- Definimos duas constantes: “caracteresEspeciais” contendo todos os caracteres acentuados e especiais que queremos remover, e “caracteresSubstitutos” com os caracteres correspondentes que serão utilizados como substitutos.
- Utilizamos um loop “For” para percorrer cada caractere especial da tabela.
- A função “Replace” é utilizada para substituir cada caractere especial encontrado pelo caractere correspondente na tabela de substitutos.
- No final, retornamos o texto simplificado, sem acentos e caracteres especiais.
5. Utilização da Função
Com a função personalizada criada, agora podemos utilizá-la em nossa planilha.
Por exemplo, se tivermos o texto “Coração” na célula A1, basta utilizar a fórmula:
=RemoverAcentos(A1)
O resultado será “Coracao”, com todos os acentos removidos.
Conclusão
Com essa função personalizada, agora você pode simplificar textos em qualquer planilha do Excel, removendo acentos, cedilhas e outros caracteres especiais de maneira simples e eficiente. Essa ferramenta é especialmente útil para normalizar textos e facilitar a manipulação e análise de dados.
A criação de funções personalizadas em VBA amplia as possibilidades do Excel, permitindo que você adapte a ferramenta às suas necessidades específicas e aumente sua produtividade.
Espero que tenham gostado desse tutorial e que a função “RemoverAcentos” seja útil em suas tarefas diárias com o Excel. Compartilhe essa dica com seus colegas e aproveite todas as vantagens que o Excel pode oferecer!
Até a próxima, e lembre-se: com conhecimento e criatividade, você pode ir além no Excel!
Precisa de Aulas de Excel?
Aulas de Excel, trabalhos e planilhas personalizadas!
Sobre o Autor
0 Comentários