La méthode 'Replace' de l'objet 'Range' a échoué

Résolu/Fermé
eZula Messages postés 3392 Date d'inscription samedi 26 avril 2008 Statut Contributeur Dernière intervention 8 mai 2021 - 21 juin 2013 à 11:03
eZula Messages postés 3392 Date d'inscription samedi 26 avril 2008 Statut Contributeur Dernière intervention 8 mai 2021 - 21 juin 2013 à 11:53
Bonjour,

J'ai enregistré une macro qui supprime les accents :

Sub Accents()
'
' Accents Macro
'

'
    Cells.Replace What:="à", Replacement:="a", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False    Cells.Replace What:="é", Replacement:="e", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
          Cells.Replace What:="è", Replacement:="e", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Application.Run "PERSONAL.XLSB!Accents"
      Cells.Replace What:="ù", Replacement:="u", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
          Cells.Replace What:="ï", Replacement:="i", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub


Problème, à l'exécution, j'ai ce message hostile :

Erreur d'exécution '-2147417848 (80010108)':
La méthode 'Replace' de l'objet 'Range' a échoué


En activant le débogueur, la première ligne en gras dans le code ci-dessus est surlignée en jaune.
Y a-t-il qquechose à faire selon vous ?
La subsitution des accents semble néanmoins fonctionner

Merci

3 réponses

Bonjour
Voila une macro
mettre au depard Cells.Select qui selectionne toute la Feuil

Sub Macro1()
Cells.Select
Selection.Replace What:="é", Replacement:="e", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="à", Replacement:="a", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
' Fin
Range("A1").Select
End Sub
1
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
21 juin 2013 à 11:31
Étant donné que tu emploies Cells directement, sans désigner la feuille et le classeur, il faudrait que tu t'assures que la macro s'exécute sur le bon objet.
0
eZula Messages postés 3392 Date d'inscription samedi 26 avril 2008 Statut Contributeur Dernière intervention 8 mai 2021 392
21 juin 2013 à 11:53
Impec foo

Merci à vous deux :)
0