SUBSTITUE et REMPLACER : deux façons de modifier du texte
Vous récupérez régulièrement des données qui ne sont pas tout à fait dans le bon format : des numéros de téléphone parsemés de points, des codes produit dont il faut changer le préfixe, des références où traîne un caractère parasite. Plutôt que de tout corriger à la main, Excel vous propose deux fonctions taillées pour cela : SUBSTITUE et REMPLACER. Toutes deux modifient une partie d'un texte, mais elles ne raisonnent pas du tout de la même façon.
SUBSTITUE remplace un texte que vous connaissez. Vous lui dites « cherche tel mot ou tel caractère, et mets celui-ci à la place », et elle s'exécute partout où le motif apparaît. REMPLACER, elle, travaille à l'aveugle sur la position : vous lui indiquez « à partir du caractère numéro X, écrase Y caractères et mets ceci », sans même savoir ce qu'il y avait à cet endroit. C'est toute la nuance entre chercher un contenu et viser un emplacement.
Ces deux fonctions existent dans toutes les versions d'Excel, sur Windows comme sur Mac, et fonctionnent à l'identique. Voyons la syntaxe de chacune, leur différence concrète, puis une série de cas très courants : cibler une occurrence précise, supprimer un caractère, imbriquer plusieurs remplacements et nettoyer des données mal saisies.
En France, Excel sépare les arguments d'une fonction par un point-virgule, et non par une virgule. Vous écrivez donc =SUBSTITUE(A1; "."; "-"). Sur une version anglophone ou dans Google Sheets, remplacez les points-virgules par des virgules.
La fonction SUBSTITUE : remplacer un texte connu
SUBSTITUE est la fonction à utiliser quand vous savez exactement quel texte chercher. Sa syntaxe complète est la suivante :
=SUBSTITUE(texte ; ancien_texte ; nouveau_texte ; [no_position])
Détaillons ses quatre arguments. Le premier, texte, est la cellule ou la chaîne à traiter. Le deuxième, ancien_texte, est le morceau que vous voulez retrouver. Le troisième, nouveau_texte, est ce que vous mettez à la place. Le quatrième, no_position, est facultatif : il sert à ne remplacer qu'une occurrence précise (nous y revenons plus bas). Sans ce quatrième argument, SUBSTITUE remplace toutes les occurrences trouvées.
Prenons un exemple concret. La cellule A2 contient un numéro de téléphone saisi avec des points : 06.44.60.79.11. Pour transformer tous les points en espaces, vous écrivez :
=SUBSTITUE(A2; "."; " ")
Le résultat devient 06 44 60 79 11. Chaque point a été remplacé par un espace, d'un seul coup. Autre cas fréquent : vous avez une liste de codes du type REF-2025-001 et vous voulez basculer l'année. Il suffit de cibler le morceau « 2025 » :
=SUBSTITUE(A2; "2025"; "2026")
Un point important : SUBSTITUE respecte la casse, c'est-à-dire qu'elle distingue majuscules et minuscules. Chercher "excel" ne touchera pas le mot « Excel » écrit avec une majuscule. Gardez ce détail en tête lorsque vos remplacements ne donnent pas le résultat attendu.
Si vous débutez avec les formules, prenez d'abord le temps d'assimiler la syntaxe de base : le signe égal, les références de cellules et les guillemets. Notre guide des formules Excel pour débutants reprend ces fondamentaux pas à pas.
La fonction REMPLACER : remplacer par position
REMPLACER ne cherche aucun contenu : elle agit sur des positions. Sa syntaxe est la suivante :
=REMPLACER(texte ; position ; nombre ; nouveau_texte)
Ses quatre arguments sont tous obligatoires. texte est la chaîne d'origine. position est le numéro du premier caractère à modifier (le premier caractère porte le numéro 1). nombre est le nombre de caractères à écraser à partir de cette position. nouveau_texte est ce que l'on insère à la place. Autrement dit, vous découpez une fenêtre dans le texte et vous la remplacez par autre chose.
Exemple : la cellule A2 contient un code ABC123456 et vous voulez remplacer les trois premières lettres par un nouveau préfixe « XYZ ». Vous démarrez à la position 1 et vous écrasez 3 caractères :
=REMPLACER(A2; 1; 3; "XYZ")
Le résultat est XYZ123456. Notez bien que REMPLACER se moque de ce qui se trouvait là : elle aurait remplacé « ABC », « DEF » ou n'importe quoi d'autre, du moment que c'étaient les trois premiers caractères. Autre usage typique : masquer une partie d'un numéro pour des raisons de confidentialité. Pour cacher les six premiers chiffres d'un IBAN en cellule A2 :
=REMPLACER(A2; 1; 6; "******")
REMPLACER est donc le bon choix dès que vos données suivent un format fixe et que la zone à modifier se trouve toujours au même endroit. À l'inverse, si la position varie d'une ligne à l'autre, elle n'est pas adaptée : c'est SUBSTITUE qu'il vous faut.
SUBSTITUE ou REMPLACER : laquelle choisir ?
C'est le cœur du sujet, et la source de la plupart des hésitations. Les deux fonctions modifient du texte, mais leur logique est opposée. La règle tient en une phrase : utilisez SUBSTITUE quand vous savez QUOI remplacer, et REMPLACER quand vous savez OÙ remplacer. Le tableau ci-dessous résume tout.
| Critère | SUBSTITUE | REMPLACER |
|---|---|---|
| Cible le texte par… | son contenu (un mot, un caractère) | sa position (numéro de caractère) |
| Vous devez connaître… | le texte à chercher | l'emplacement à modifier |
| Syntaxe | =SUBSTITUE(texte ; ancien ; nouveau) | =REMPLACER(texte ; pos ; nb ; nouveau) |
| Nombre d'occurrences | toutes (ou une seule, au choix) | une seule zone définie |
| Cas type | remplacer tous les « . » par des « - » | changer les 3 premiers caractères |
Un repère mnémotechnique simple : pensez « SUBSTITUE = substituer un mot » (vous le connaissez) et « REMPLACER = remplacer à un endroit » (vous le pointez). Dans la grande majorité des cas de nettoyage de données, c'est SUBSTITUE qui sert le plus, car on cherche presque toujours un caractère ou un mot précis. REMPLACER brille surtout sur des formats rigides où l'emplacement ne bouge jamais.
Envie de maîtriser vraiment Excel ?
Notre formation Excel vous accompagne des formules de base aux fonctions texte avancées et aux tableaux croisés dynamiques, en live avec un formateur dédié.
Remplacer uniquement la nième occurrence
Voici une situation piégeuse. Imaginons une date saisie avec des points : 15.01.2026, et vous voulez transformer seulement le second point en slash, pour obtenir 15.01/2026. Si vous utilisez SUBSTITUE sans précaution, tous les points y passeront. C'est précisément le rôle du quatrième argument, no_position : il indique à SUBSTITUE quelle occurrence remplacer, et elle seule.
=SUBSTITUE(A2; "."; "/"; 2)
Le 2 final signifie « ne remplace que le deuxième point rencontré ». Le résultat est 15.01/2026 : le premier point reste intact, le second devient un slash. Si vous aviez écrit 3, Excel aurait visé le troisième point (s'il existait), et ainsi de suite. Sans ce quatrième argument, rappelons-le, tous les points seraient remplacés.
Ce paramètre est très utile pour découper proprement des chaînes répétitives. Par exemple, dans un chemin de fichier ou une référence à plusieurs segments séparés par un même caractère, il vous permet d'agir sur un seul séparateur sans toucher aux autres.
L'argument no_position n'existe que dans SUBSTITUE, pas dans REMPLACER. Et attention : si vous demandez la 5e occurrence d'un caractère qui n'apparaît que 3 fois, SUBSTITUE ne renvoie pas d'erreur, elle laisse simplement le texte inchangé. Vérifiez donc que l'occurrence visée existe bien.
Supprimer un caractère : remplacer par du vide
Astuce simple mais redoutablement efficace : pour supprimer un caractère, il suffit de le remplacer par une chaîne vide, notée "" (deux guillemets accolés, sans rien entre). C'est l'usage le plus fréquent de SUBSTITUE au quotidien.
Vos données contiennent des montants saisis avec un symbole euro collé, comme 1 250€, et vous avez besoin de la valeur numérique seule ? Supprimez le symbole :
=SUBSTITUE(A2; "€"; "")
De même, pour retirer toutes les espaces d'un code mal saisi, ou tous les tirets d'un numéro de sécurité sociale :
=SUBSTITUE(A2; "-"; "")
Vous pouvez aussi supprimer un mot entier, pas seulement un caractère. Si une colonne contient des libellés comme Société DURAND SARL et que vous voulez retirer la mention « SARL » :
=SUBSTITUE(A2; " SARL"; "")
En incluant l'espace avant « SARL » dans le texte recherché, vous évitez de laisser une double espace disgracieuse à la fin. Ce petit réflexe rend vos nettoyages bien plus propres.
Enchaîner plusieurs remplacements : SUBSTITUE imbriqué
SUBSTITUE ne traite qu'un seul motif à la fois. Mais que faire si vous devez remplacer plusieurs caractères différents en une seule formule ? La réponse : imbriquer plusieurs SUBSTITUE les uns dans les autres. Le résultat de la première sert de texte d'entrée à la suivante.
Cas concret : un numéro de téléphone récupéré dans un format peu pratique, 06.44.60.79.11, que vous voulez d'abord nettoyer de ses points, puis préfixer. On commence par l'intérieur. Pour supprimer tous les points et tous les espaces d'une cellule en une seule formule :
=SUBSTITUE(SUBSTITUE(A2; "."; ""); " "; "")
Excel évalue d'abord le SUBSTITUE le plus interne (suppression des points), puis applique le second SUBSTITUE sur ce résultat (suppression des espaces). Vous pouvez empiler ainsi plusieurs niveaux. Voici un exemple à trois étages qui nettoie successivement les points, les espaces et les tirets :
=SUBSTITUE(SUBSTITUE(SUBSTITUE(A2; "."; ""); " "; ""); "-"; "")
La lecture se fait de l'intérieur vers l'extérieur. C'est une technique extrêmement utile pour standardiser des colonnes hétérogènes, où les utilisateurs ont saisi les données chacun à leur manière. Au-delà de trois ou quatre niveaux, la formule devient toutefois difficile à relire : c'est souvent le signe qu'il faut songer à structurer la saisie en amont.
Supprimer les espaces en trop : SUPPRESPACE
Une précision importante : pour les espaces, SUBSTITUE n'est pas toujours la meilleure solution. Si votre objectif est de retirer toutes les espaces, =SUBSTITUE(A2; " "; "") convient. Mais bien souvent, vous voulez seulement supprimer les espaces superflues — celles en début, en fin de chaîne, ou les doublons entre les mots — tout en gardant une espace simple entre chaque mot. Pour cela, Excel dispose d'une fonction dédiée : SUPPRESPACE.
=SUPPRESPACE(A2)
SUPPRESPACE supprime les espaces de début et de fin, et réduit toute suite d'espaces multiples à une seule espace entre les mots. Si A2 contient " Jean Dupont " (avec des espaces parasites), le résultat est un net "Jean Dupont". C'est l'outil idéal pour les données importées d'un copier-coller ou d'un export, souvent truffées d'espaces invisibles qui cassent vos recherches et vos tris.
Vous pouvez d'ailleurs combiner SUPPRESPACE avec SUBSTITUE. Par exemple, pour nettoyer un texte à la fois de ses points-virgules et de ses espaces superflues :
=SUPPRESPACE(SUBSTITUE(A2; ";"; " "))
Un espace insécable (souvent collé depuis un site web ou un PDF) n'est pas reconnu par SUPPRESPACE. Il porte le code 160. Pour l'éliminer, enveloppez votre formule ainsi : =SUPPRESPACE(SUBSTITUE(A2; CAR(160); " ")). C'est la cause numéro un des « espaces qui ne partent pas ».
Cas concrets : nettoyer numéros et codes
Rassemblons tout cela autour de situations que vous rencontrez vraiment. Ces formules sont prêtes à l'emploi, il ne vous reste qu'à adapter la référence de cellule.
Standardiser un numéro de téléphone. Vous avez des numéros saisis avec points, espaces ou tirets, et vous voulez un format homogène avec espaces. On supprime tout, puis on regroupe. La première étape, le nettoyage, donne :
=SUBSTITUE(SUBSTITUE(SUBSTITUE(A2; "."; ""); " "; ""); "-"; "")
Changer le préfixe d'une référence produit. Vos codes commencent tous par « OLD » et vous migrez vers « NEW ». Comme le préfixe est toujours au même endroit, REMPLACER est ici plus sûr que SUBSTITUE (qui toucherait un éventuel « OLD » ailleurs dans la chaîne) :
=REMPLACER(A2; 1; 3; "NEW")
Nettoyer un montant importé. Vous avez des valeurs comme 1 250,00 € et il vous faut le nombre brut. On retire le symbole euro et les espaces qui empêchent Excel de reconnaître un nombre :
=SUBSTITUE(SUBSTITUE(A2; "€"; ""); " "; "")
Corriger une faute récurrente. Un import contient systématiquement « Marseile » au lieu de « Marseille ». Un SUBSTITUE règle tout le fichier d'un coup :
=SUBSTITUE(A2; "Marseile"; "Marseille")
Ces fonctions ne modifient pas la cellule d'origine : elles produisent un résultat dans une nouvelle colonne. Une fois la colonne nettoyée obtenue, vous pouvez la copier puis la coller en « valeurs » par-dessus l'originale si vous souhaitez figer le résultat. C'est la bonne pratique pour transformer durablement vos données sans laisser une forêt de formules.
En résumé
SUBSTITUE et REMPLACER sont deux fonctions texte simples qui vous font gagner un temps considérable sur le nettoyage des données. Retenez l'essentiel : SUBSTITUE cible un texte connu et le remplace partout (ou à l'occurrence de votre choix grâce à son quatrième argument no_position), tandis que REMPLACER agit sur une position fixe, sans se soucier du contenu. Pour supprimer un caractère, remplacez-le par "" ; pour enchaîner plusieurs corrections, imbriquez les SUBSTITUE ; et pour les espaces superflues, pensez à SUPPRESPACE plutôt qu'à un remplacement brutal.
Ces fonctions ne sont qu'une porte d'entrée vers la manipulation de texte dans Excel. Si vous souhaitez gagner en aisance et en autonomie, notre formation Excel vous accompagne des formules de base aux tableaux croisés dynamiques, 100 % à distance et en live, avec un formateur dédié rien que pour vous. Inscription immédiate, démarrage rapide et paiement en 3× sans frais. Pour continuer, parcourez aussi notre tutoriel sur la concaténation, notre guide de la fonction SI et notre guide des formules pour débutants.




