Sub suppression2()
' a adapter:ajouter eventuellement la ponctuation a supprimer
'asupp = Array("À", "Á", "Â", "Ã", "Ä", "Å", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ù", "Ú", "Û", "Ü", "Ñ", ".", ",", ":", "!", "?", "(", ")", "[", "]", "\", "_", "-", "=", "+", "/")
' a adapter: remplacement du terme avant le ; par le terme qui est après
t = Timer
rempl = Array("À;A", "Á;A", "Â;A", "Ã;A", "Ä;A", "Å;A", "È;E", "É;E", "Ê;E", "#; ", "$; ", """; ", "Ë;E", "Ì;I", "Í;I", "Î;I", "Ï;I", "Ù;U", "Ú;U", "Û;U", "Ü;U", "Ñ;N", ".; ", ",; ", ":; ", "!; ", "?; ", "(; ", "); ", "[; ", "]; ", "\; ", "_; ", "-; ", "=; ", "'; ", "*; ", "+; ", "/; ", "&;AND")
Dim tab1
Set tab1 = CreateObject("scripting.dictionary")
For m = LBound(rempl) To UBound(rempl)
tab1(Split(rempl(m), ";")(0)) = Split(rempl(m), ";")(1)
Next m
For n = 2 To Range("A65536").End(xlUp).Row
mot = Range("A" & n)
While InStr(mot, "(") <> 0
If InStr(mot, ")") = 0 Then
suite = ""
Else
suite = Mid(mot, InStr(mot, ")") + 1)
End If
mot = Left(mot, InStr(mot, "(") - 1) & suite
Wend
For Each cle In tab1
mot = Replace(mot, cle, tab1(cle))
Next
Range("E" & n) = Trim(mot)
Next n
MsgBox (Timer - t)
End Sub