La macro qui suit permet de supprimer les caractères accentués dans Excel. La plage en gras correspond à la plage de valeurs dont les accents sont à supprimer.

La macro pour supprimer les accents
Option Explicit
Const AccChars = "ŠŽšžŸÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðñòóôõöùúûüýÿ"
Const RegChars = "SZszYAAAAAACEEEEIIIIDNOOOOOUUUUYaaaaaaceeeeiiiidnooooouuuuyy"Sub SupprAccent()
Dim A As String * 1
Dim B As String * 1
Dim i As IntegerFor i = 1 To Len(AccChars)
A = Mid(AccChars, i, 1)
B = Mid(RegChars, i, 1)Range("A1:A3").Replace What:=A, _
Replacement:=B, _
LookAt:=xlPart, _
MatchCase:=TrueNext
End Sub
où :
- A1:A3 correspond à la plage donc les accents sont à supprimer
Comment utiliser la macro ?
- Copier la macro dans Visual Basic
- Renseigner la plage à traiter
- Exécuter la macro
- La macro supprime les accents de la plage donnée
Application
Avant
A | B | C | |
---|---|---|---|
1 | Au bal, au bal masqué, ohé, ohé | ||
2 | Terre brûlée au vent, Des landes de pierres | ||
3 | Ils m'entraînent au bout de la nuit |
Après
A | B | C | |
---|---|---|---|
1 | Au bal, au bal masque, ohe, ohe | ||
2 | Terre brulee au vent, Des landes de pierres | ||
3 | Ils m'entrainent au bout de la nuit |