Menu

SUBSTITUE et REMPLACER Excel : remplacer du texte

=SUBSTITUE(A2;"-";"") supprime chaque tiret de A2 : SUBSTITUE échange du texte en le reconnaissant. REMPLACER échange selon la position : =REMPLACER(A2;1;3;"XYZ") écrase les 3 premiers caractères.

Chaque feuille de cette page est interactive : modifiez un nombre ou une formule et elle se recalcule.

=SUBSTITUE(A2;"-";"") supprime chaque tiret du texte de A2 : SUBSTITUE trouve l'ancien texte et met le nouveau à sa place, ici un texte vide. =SUBSTITUE(A2;"-";".") mettrait plutôt un point à la place de chaque tiret. Dans un Excel anglais, SUBSTITUE s'appelle SUBSTITUTE ; le tableau affiche les formules sous cette forme anglaise, avec des virgules, mais vous pouvez aussi les taper comme dans un Excel français, avec des points-virgules : =SUBSTITUE(A2;"-";"").

Supprimer les tirets des numéros de téléphone
B2
ABC
1PhoneDigits onlyWith dots
2555-201-33445552013344555.201.3344
3555-870-11225558701122555.870.1122
4555-433-90015554339001555.433.9001
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =SUBSTITUE(A2;"-";"")

Le résultat est du texte, même quand il ne reste que des chiffres. Ajoutez -- devant, =--SUBSTITUE(A2;"-";""), quand il vous faut un nombre.

SUBSTITUE ou REMPLACER

=SUBSTITUTE(text, old_text, new_text, [instance_num])
=REPLACE(old_text, start_num, num_chars, new_text)

SUBSTITUE cherche un contenu : peu importe où se trouve old_text. REMPLACER (REPLACE en anglais) ne cherche rien : elle compte les caractères et en écrase num_chars à partir de start_num.

Par contenu ou par position
B2
AB
1TextResult
2Report 2025 finalReport 2026 final
3Report 2025 finalReport 2026 final
4ID-0042SKU-0042
55551234555-1234
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =SUBSTITUE(A2;"2025";"2026")
  • B2 et B3 donnent le même résultat, mais B3 ne fonctionne que parce que l'année commence au caractère 8. Si le texte change, SUBSTITUE la trouve toujours ; REMPLACER, non.
  • B4 remplace les 2 premiers caractères, quels qu'ils soient, par SKU.
  • B5 utilise une longueur de 0 : rien n'est supprimé, donc REMPLACER insère le tiret après le troisième caractère. C'est la méthode habituelle pour insérer un caractère à une position donnée.

Utilisez SUBSTITUE quand vous connaissez le texte, REMPLACER quand vous connaissez la position. Pour une modification par position, TROUVE peut fournir la position : =REMPLACER(A2;TROUVE(" ";A2);1;"_") remplace la première espace.

Remplacer seulement la deuxième (nième) occurrence

Le quatrième argument de SUBSTITUE choisit l'occurrence à changer. Sans lui, toutes changent :

Le numéro d'occurrence
B3
AB
1PathResult
22026-03-15-final2026/03/15/final
32026-03/15-final
42026-03-15 final
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =SUBSTITUE(A2;"-";"/";2)

B2 change chaque tiret. B3, avec 2, ne change que le deuxième et donne 2026-03/15-final ; B4 met une espace à la place du troisième. Un numéro d'occurrence supérieur au nombre de correspondances ne change rien.

Renommer la gamme de produits
B2
AB
1PlanNew name
2Basic monthly
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.

À vous : En B2, remplacez Basic par Standard dans le nom de l'offre de A2, avec une formule.

Supprimer plusieurs caractères différents

SUBSTITUE traite un seul old_text par appel. Pour plusieurs, imbriquez les appels : chacun travaille sur le résultat de celui qu'il contient.

Nettoyer un numéro de téléphone
B2
AB
1PhoneDigits
2(555) 201-33445552013344
3(555) 870-11225558701122
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(A2;"(";"");")";"");"-";"");" ";"")

Lisez-la de l'intérieur vers l'extérieur : supprimer (, puis ), puis -, puis les espaces. Dans Microsoft 365, =REGEX.REMPLACER(A2;"[^0-9]";"") supprime en un seul appel chaque caractère qui n'est pas un chiffre. Pour les espaces en trop en particulier, SUPPRESPACE est le meilleur outil, car elle garde une espace entre les mots.

Compter les occurrences d'un caractère ou d'un mot

SUBSTITUE avec un texte vide supprime chaque occurrence, donc la longueur perdue est le nombre de caractères supprimés. Divisez par la longueur du mot pour compter des mots :

Combien de virgules, combien de fois "red"
B2
ABC
1TextCommas"red" appears
2red, green, red, blue32
3Red, red, red22
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =NBCAR(A2)-NBCAR(SUBSTITUE(A2;",";""))

C3 renvoie 2, pas 3 : SUBSTITUE respecte la casse, donc Red n'est pas supprimé. Utilisez SUBSTITUE(MINUSCULE(A3);"red";"") pour compter sans tenir compte de la casse.

Compter les étiquettes
B2
AB
1TagsCount
2excel,text,formulas,tips
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.

À vous : Les étiquettes de A2 sont séparées par des virgules. En B2, comptez combien il y a d'étiquettes (une de plus que le nombre de virgules).

Erreur fréquente : SUBSTITUE pour modifier un nombre

SUBSTITUE travaille sur le texte d'un nombre, et le résultat est du texte. =SUBSTITUE(A2;"0";"") sur 1050 donne 15 sous forme de texte, et un format comme $1,050.00 est ignoré parce que SUBSTITUE lit la valeur stockée, 1050. Pour modifier des nombres, utilisez l'arithmétique. Pour modifier du texte dans de nombreuses cellules à la fois, sans formules, Accueil > Rechercher et sélectionner > Remplacer (Ctrl+H ; Contrôle+H sur un Mac) offre l'option Respecter la casse et remplace sur place.

Questions fréquentes

Quelle est la différence entre SUBSTITUE et REMPLACER dans Excel ?

SUBSTITUE trouve le texte d'après son contenu : =SUBSTITUE(A2;"old";"new") change chaque old. REMPLACER travaille par position : =REMPLACER(A2;5;3;"new") écrase 3 caractères à partir du 5e, quels qu'ils soient.

Comment supprimer un caractère d'une cellule dans Excel ?

Remplacez-le par un texte vide : =SUBSTITUE(A2;"-";"") supprime chaque tiret. Pour plusieurs caractères, imbriquez les appels : =SUBSTITUE(SUBSTITUE(A2;"(";"");")";"").

Comment compter combien de fois un caractère apparaît dans une cellule ?

Comparez la longueur avant et après sa suppression : =NBCAR(A2)-NBCAR(SUBSTITUE(A2;",";"")) compte les virgules de A2. Pour un mot, divisez par sa longueur : =(NBCAR(A2)-NBCAR(SUBSTITUE(A2;"red";"")))/3.

SUBSTITUE respecte-t-elle la casse ?

Oui. =SUBSTITUE("Red red";"red";"blue") donne Red blue. Pour ignorer la casse, passez d'abord le texte en minuscules, =SUBSTITUE(MINUSCULE(A2);"red";"blue"), ou utilisez Rechercher et remplacer (Ctrl+H), qui ignore la casse par défaut.

Illustration des langages de programmation de Coddy

Apprendre à coder avec Coddy

COMMENCER