Macro. Quitar tildes (acentos) en una hoja completa excel.

Loq ue deseo es que a través de una macro que se ejecute por un botón se pueda quitar los acentos que posse algunas palabras. Solo quitar los acentos y no reescribirla en otra celda es decir que si en la A1 tengo la palabra "más" simplemente le quite el acento y quede "mas". También los demás signos se quiten como por ejemplo à, ä, â y demás

2 Respuestas

Respuesta
2

Te paso la macro que necesitas:

Sub Sacaacentos()
Cells.Select

'Por. Macro_Leo
Selection.Replace What:="á", Replacement:="a", MatchCase:=True
Selection.Replace What:="é", Replacement:="e", MatchCase:=True
Selection.Replace What:="í", Replacement:="i", MatchCase:=True
Selection.Replace What:="ó", Replacement:="o", MatchCase:=True
Selection.Replace What:="ú", Replacement:="u", MatchCase:=True
Selection.Replace What:="â", Replacement:="a", MatchCase:=True
Selection.Replace What:="ê", Replacement:="e", MatchCase:=True
Selection.Replace What:="î", Replacement:="i", MatchCase:=True
Selection.Replace What:="ô", Replacement:="o", MatchCase:=True
Selection.Replace What:="û", Replacement:="u", MatchCase:=True
Selection.Replace What:="ä", Replacement:="a", MatchCase:=True
Selection.Replace What:="ë", Replacement:="e", MatchCase:=True
Selection.Replace What:="ï", Replacement:="i", MatchCase:=True
Selection.Replace What:="ö", Replacement:="o", MatchCase:=True
Selection.Replace What:="ü", Replacement:="u", MatchCase:=True
End Sub

La macro la pones en un modulo y la ejecutas, te quita los tildes o dieresis que pediste en toda la hoja.

Respuesta
1

Tocaría con un condicional if en donde por ejemplo

IF palabra= á then

Palabra a //lo que tendríamos que trabajar e investigar es sobre el remplazo //por cadenas para remplazar las letras tildadas

end if

Esto es fácil pero cuando se hace en HTML.

Éxitos y disculpa la tardanza

Hola experto ya logro remplazarla con esta instrucción

Sub Sacaacentos()
Sheets("ORDEN_TOTAL").Select
Cells.Select
Selection.Replace What:="á", Replacement:="a", MatchCase:=True

End sub

Ahora el problema que tengo es que al querer remplazar una frase es decir: Alban San jose por San Jose (Alban) cuando lo ejecuto la primera vez en correcto pero al ejecutarlo la segunda ves me escribe San Jose (Alban) (Alban) me repite lo que esta en el parentesi o por ejemplo si necesito reemplazar Bogotá por Santafe de Bogotá la segunda ves que lo ejecuto me escribe Santafe de Bogotá Bogotá .
Que puedo hacer?
Gracias

Debería de hacer una ejecución paso a paso de tu programa oprimiendo la tecla F8 sobre el código

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas