Página 1 de 1

Corrigir Texto Importado

Enviado: 15 Ago 2017 às 09:43
por FelipeBarbosa
Bom dia Srs!

Estou com um problema com uma planilha que tem conexão com um banco de dados Online do Google Docs e quando vem as informações, os caracteres vem de uma forma alterada devido acentuações.

Teria como fazer uma macro para corrigir esses textos quando há uma nova atualização dos dados?

Segue anexo planilha de exemplo.

Desde já agradeço.

Re: Corrigir Texto Importado

Enviado: 15 Ago 2017 às 10:09
por BetoSSena
Felipe,

Você pode gravar uma VBA simples de substituição.
Daria um trabalho inicial, porém, seria uma única vez.

exemplo abaixo.

Cells.Replace What:="Análise", Replacement:="Análise", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

teria que fazer uma para cada um.

Corrigir Texto Importado

Enviado: 16 Ago 2017 às 09:21
por FelipeBarbosa
Beto, obrigado.

Porém o problema é que vem sempre palavras novas, é uma planilha que tem conexão com um banco de dados online e atualiza sempre.

Teria algum código que já englobasse boa parte dos erros?

Corrigir Texto Importado

Enviado: 16 Ago 2017 às 09:50
por BetoSSena
Felipe,

Poderia criar uma formula no VBA, para tirar os acentos, porém, teria uma aba parar tratar o arquivo e posteriormente trabalhar com ele.
Function TiraAcento(Palavra)

CAcento = "àáâãäèéêëìíîïòóôõöùúûüÀÁÂÃÄÈÉÊËÌÍÎÒÓÔÕÖÙÚÛÜçÇñÑ"
SAcento = "aaaaaeeeeiiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcCnN"
Texto = ""
If Palavra <> "" Then
For X = 1 To Len(Palavra)
Letra = Mid(Palavra, X, 1)
Pos_Acento = InStr(CAcento, Letra)
If Pos_Acento > 0 Then
Letra = Mid(SAcento, Pos_Acento, 1)
End If
Texto = Texto & Letra
Next
TiraAcento = Texto
End If
End Function

Corrigir Texto Importado

Enviado: 16 Ago 2017 às 10:47
por Reinaldo
A UDF proposta pelo colega BetoSSena funciona muito bem substituindo caractere ASCII acentuado pelos seus "pares" sem acento.
Numa rápida analise em seu modelo, o problema aparenta ser que o mapa de caractere do Google não reconhece os acentuados ASC; e os substitui por combinações de caracteres; por exemplo : ó aparenta ser ó; assim e necessário montar/trocar na UDF essa cadeia de substituição

Re: Corrigir Texto Importado

Enviado: 17 Ago 2017 às 09:37
por wesleyribeiro123
Felipe
Bom dia,

Brother, uma solução simples seria criar um mapa de relação entre o caractere correto vs "caractere errado"...
Seria algo tipo este que está no anexo...

Veja se te atende!!!

Corrigir Texto Importado

Enviado: 21 Ago 2017 às 08:25
por FelipeBarbosa
Wesley muito obrigado pela solução.

Obrigado a todos. Mas essa do Wesley se encaixa melhor no meu cotidiano.