Abaixo segue duas funções para remover acentuação:
Function RemoveAcento(caract)
'Acentos e caracteres especiais que serão buscados na string
'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 irá de andará a string letra a letra
For i = 1 To Len(temp)
'InStr buscará se a letra indice i de temp pertence a
' codiA 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 a nova string
RemoveAcento = temp
End Function
Após adicionar a função no Excel temos mais coisas a fazer:
=MAIÚSCULA(TIRAR(ARRUMAR(RemoveAcento(A3))))
Oque Cada Função faz?:
MAIÚSCULA = Converte a cadeia de texto em maiúsculas.
TIRAR = Remove do texto todos os caracteres não imprimíveis.
ARRUMAR = Remove os espaços de uma cadeia de texto, com exceção dos espaços simples entre palavras.
RemoverAcento = Função adicionada no excel que transforma um carácter acentuado para um não acentuado.
Muito bom, me ajudou muito. Obrigado.
ResponderExcluir