En este ejemplo nos encontramos un Excel donde el texto tiene caracteres como por ejemplo  , à … y queremos sustituirlo por caracteres sin símbolos, esto ocurre con Excel bajados de sistemas que codifican en UTF-8.
En el archivo tienes el ejemplo, selecciona el rango de celdas a corregir, en este caso desde A1 hasta E32 y ejecuta la macro, verás como la celda E1 queda corregida (como «Líneas de pedido») y el resto de caracteres también.
También hay una hoja llamada «CONVERSION», donde puedes ver la correspondencia entre codificación UTF-8 a Latin 1.
Podemos utilizar código VBA con una macro donde remplace un caracter por otro, este ejemplo es interesante para otras necesidades, donde tengamos que reemplazar una gran cantidad de datos en un Excel.
El código es:
Sub Correccion_CARACTERES_UTF8toLATIN()
With Selection
‘Conversión UTF8 a LATIN1
.Replace What:=»A», Replacement:=»Á», MatchCase:=True
.Replace What:=»Ã‰», Replacement:=»É», MatchCase:=True
.Replace What:=»Ã», Replacement:=»Í», MatchCase:=True
.Replace What:=»Ã“», Replacement:=»Ó», MatchCase:=True
.Replace What:=»Ãš», Replacement:=»Ú», MatchCase:=True
.Replace What:=»Ã¡», Replacement:=»á», MatchCase:=True
.Replace What:=»Ã©», Replacement:=»é», MatchCase:=True
.Replace What:=»Ã», Replacement:=»í», MatchCase:=True
.Replace What:=»Ã³», Replacement:=»ó», MatchCase:=True
.Replace What:=»Ãº», Replacement:=»ú», MatchCase:=True
.Replace What:=»Â°», Replacement:=»º», MatchCase:=True
.Replace What:=»Âª», Replacement:=»º», MatchCase:=True
.Replace What:=»Âº», Replacement:=»º», MatchCase:=True
.Replace What:=»Ã±», Replacement:=»ñ», MatchCase:=True
.Replace What:=»Ã½», Replacement:=»ý», MatchCase:=True
.Replace What:=»Ã¼», Replacement:=»ü», MatchCase:=True
End With
End Sub
Descargar el ejemplo
Deja una respuesta