Catégories
Excel / VBA pour le Web Macro VBA Caractères Macros VBA

Macro pour supprimer les accents dans Excel

Partager :

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 Integer

For 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:=True

Next

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

 ABC
1Au bal, au bal masqué, ohé, ohé  
2Terre brûlée au vent, Des landes de pierres  
3Ils m'entraînent au bout de la nuit  

Après

 ABC
1Au bal, au bal masque, ohe, ohe  
2Terre brulee au vent, Des landes de pierres  
3Ils m'entrainent au bout de la nuit