Accéder au contenu principal

Comment rechercher et remplacer du texte tout en préservant le formatage dans Excel ?

Author: Sun Last Modified: 2025-08-06
A screenshot showing Excel cells with partial formatting changes after find and replace
A screenshot showing desired result where formatting is preserved in Excel cells
La fonction Rechercher et Remplacer est puissante et utile lorsque nous devons trouver une valeur spécifique et la remplacer par une autre. Cependant, s'il y a une plage de cellules et que certaines d'entre elles incluent des valeurs avec différents formats, utiliser la fonction Rechercher et Remplacer pour modifier les valeurs risque de briser le formatage des valeurs dans les cellules, comme le montre la capture d'écran ci-dessous. Alors, comment pouvons-nous préserver le formatage des valeurs dans chaque cellule tout en effectuant une recherche et un remplacement dans Excel ?

Rechercher et remplacer tout en préservant le formatage avec un code Macro

arrow blue right bubble Rechercher et remplacer tout en préservant le formatage avec un code Macro

Il n'y a pas d'autres méthodes disponibles à part le code macro qui puisse vous aider à rechercher et remplacer du texte tout en préservant le formatage.

1. Appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic for Application.

2. Cliquez sur Insérer > Module, puis collez le code ci-dessous dans le script.

VBA : Rechercher et remplacer tout en préservant le formatage

Sub CharactersReplace(Rng As Range, FindText As String, ReplaceText As String, Optional MatchCase As Boolean = False)
  'UpdatebyExtendoffice20160711
    Dim I As Long
    Dim xLenFind As Long
    Dim xLenRep As Long
    Dim K As Long
    Dim xValue As String
    Dim M As Long
    Dim xCell As Range
    xLenFind = Len(FindText)
    xLenRep = Len(ReplaceText)
    If Not MatchCase Then M = 1
    For Each xCell In Rng
        If VarType(xCell) = vbString Then
            xValue = xCell.Value
            K = 0
            For I = 1 To Len(xValue)
              If StrComp(Mid$(xValue, I, xLenFind), FindText, M) = 0 Then
                xCell.Characters(I + K, xLenFind).Insert ReplaceText
                K = K + xLenRep - xLenFind
              End If
            Next
        End If
    Next
End Sub

Sub Test_CharactersReplace()
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("Select a range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Call CharactersReplace(xRg, "KK", "Kutools", True)
End Sub

A screenshot of the VBA module window with code to find and replace

Astuce : Dans le code, KK est la chaîne de caractères que vous souhaitez rechercher, et Kutools est la chaîne de caractères avec laquelle vous voulez la remplacer. Vous pouvez les modifier selon vos besoins.

3. Appuyez sur F5 une boîte de dialogue apparaît pour vous permettre de sélectionner une plage où effectuer la recherche et le remplacement, voir capture d'écran :
A screenshot showing the input box for selecting range

4. Cliquez sur OK, et la chaîne de caractères spécifique dans les cellules sélectionnées sera remplacée tout en conservant le formatage.
A screenshot of cells after find and replace, preserving formatting

Meilleurs outils de productivité Office

🤖 Kutools AI Aide : Révolutionnez l'analyse de données grâce à : Exécution intelligente   |  Générer du code  |  Créer des Formules personnalisées  |  Analyser des données et générer des graphiques  |  Appeler les Fonctions améliorées
Fonctionnalités populaires : Trouver, mettre en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Combiner les colonnes ou cellules sans perdre de données   |  Arrondir...
Super RECHERCHEV : Recherche multi-critères    Recherche multi-valeurs  |   Recherche multi-feuilles   |   Correspondance floue ....
Liste déroulante avancée : Créer rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante avec sélection multiple ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer des colonnes  |  Basculer l’état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités à la une : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & de feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Chiffrer/Déchiffrer les cellules    Envoyer un e-mail par liste   |  Super Filtre   |   Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...) ...
Top15 des ensembles d’outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   Plus de50 types de graphiques (Diagramme de Gantt, ...)   |   Plus de40 formules intelligentes (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils dinsertion (Insérer un code QR, Insérer une image depuis le chemin, ...)   |  12 outils de conversion (Convertir en mots, Conversion de devises, ...)   |  7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...)   |   ... et bien plus encore
Utilisez Kutools dans votre langue préférée: compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de40 autres langues !

Dynamisez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité la plus essentielle pour vous...


Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail

  • Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, au lieu d’ouvrir de nouvelles fenêtres.
  • Augmentez votre productivité de50% et réduisez des centaines de clics de souris chaque jour!