TEXTE.APRES (TEXTAFTER en anglais) est l'une des grandes nouveautés Excel 365 pour manipuler du texte : elle extrait automatiquement tout ce qui se trouve après un délimiteur que tu définis. Une arobase, un espace, un tiret, un mot entier : elle trouve le séparateur et te renvoie la suite.
Concrètement, c'est elle qui isole le domaine d'une adresse email pour un segment marketing, extrait le nom de famille après le dernier espace dans un publipostage, récupère l'extension d'un fichier après le dernier point, ou découpe une référence produit structurée du type CATEGORIE-FAMILLE-REFERENCE. Combine-la avec TEXTE.AVANT pour extraire n'importe quel segment d'une chaîne complexe.
Syntaxe de la fonction TEXTE.APRES
=TEXTE.APRES(texte; délimiteur; [numéro_instance]; [mode_correspondance]; [si_introuvable])Si le délimiteur est introuvable et que si_introuvable est omis, TEXTE.APRES renvoie #N/A. Utilise le paramètre si_introuvable plutôt que d'envelopper la formule avec SIERREUR : c'est plus performant et plus lisible sur des milliers de lignes.
Comprendre chaque paramètre de la fonction TEXTE.APRES
TEXTE.APRES attend d'abord le texte à fouiller, puis le délimiteur après lequel couper : ces deux-là sont obligatoires. Viennent ensuite trois réglages facultatifs dans cet ordre figé — quelle occurrence du délimiteur viser, faut-il ignorer la casse, et quoi renvoyer si le délimiteur manque.
Comme ils sont positionnels, tu sautes ceux que tu n'utilises pas avec des points-virgules vides : =TEXTE.APRES(A1;"@";;;"Aucun domaine") saute le numéro d'instance et le mode de casse pour n'alimenter que la valeur de secours.
texte
: la chaîne de caractères dans laquelle effectuer la recherchePeut être une référence de cellule, une formule qui renvoie du texte, ou directement une chaîne entre guillemets.
délimiteur
: le caractère ou la suite de caractères qui marque le point de séparationTEXTE.APRES renvoie tout ce qui se trouve après ce délimiteur. Il peut s'agir d'un espace " ", d'une arobase "@", d'un tiret "-", d'une virgule ou même d'un mot complet.
Par défaut, la recherche est sensible à la casse : "A" et "a" sont des délimiteurs différents. Utilise le paramètre mode_correspondance pour ignorer la casse.
Astuce : Pour extraire après le dernier délimiteur (dernière occurrence), utilise numéro_instance à -1 plutôt que de compter les occurrences.
[numéro_instance]
: quelle occurrence du délimiteur utiliser(facultatif)Par défaut 1 (la première). Mets 2 pour la deuxième, 3 pour la troisième, etc. La valeur -1 désigne la dernière occurrence, quelle que soit sa position dans le texte.
Exemple : sur "Dossier-Projet-2024" avec le délimiteur "-", numéro_instance=1 renvoie "Projet-2024", tandis que numéro_instance=-1 renvoie "2024".
[mode_correspondance]
: contrôle la sensibilité à la casse(facultatif)0 (défaut) : "A" et "a" sont différents. 1 : la casse est ignorée, "Mot", "MOT" et "mot" sont traités comme le même délimiteur.
Utile quand les données ont été saisies manuellement et que la casse n'est pas uniforme.
[si_introuvable]
: la valeur à renvoyer si le délimiteur est absent du texte(facultatif)Par défaut, TEXTE.APRES renvoie #N/A. Ce paramètre te permet de spécifier un message personnalisé, une chaîne vide, ou n'importe quelle valeur de substitution pour rendre la formule robuste.
Astuce : Préfère ce paramètre à SIERREUR sur des fichiers avec des milliers de lignes : =TEXTE.APRES(A1;"@";;;"Sans domaine") est plus performant que =SIERREUR(TEXTE.APRES(A1;"@");"Sans domaine").
Pas envie d'écrire la formule TEXTE.APRES à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Marketing : extraire les domaines email pour segmenter les clients
Tu gères une base de clients et tu veux segmenter par entreprise pour des campagnes B2B ciblées. Chaque adresse email contient le domaine de l'entreprise après l'arobase, mais les domaines sont tous différents.
| A | B | |
|---|---|---|
| 1 | Email client | Domaine entreprise |
| 2 | marie.dubois@totalenergies.fr | totalenergies.fr |
| 3 | j.martin@bnpparibas.com | bnpparibas.com |
| 4 | contact@startup-innovante.io | startup-innovante.io |
=TEXTE.APRES(A2; "@")Ici, la fonction extrait tout ce qui se trouve après l'arobase, et s'applique à des milliers de lignes en une seconde.
Commercial : isoler les noms de famille pour le publipostage
Tu prépares un mailing et tu veux personnaliser chaque courrier avec le nom de famille seul. Les noms complets sont dans une colonne, mais certains contacts ont des prénoms composés avec plusieurs espaces.
| A | B | C | |
|---|---|---|---|
| 1 | Nom complet | Nom de famille | Formule de politesse |
| 2 | Sophie Martin | Martin | Madame Martin |
| 3 | Jean-Pierre Rousseau | Rousseau | Monsieur Rousseau |
| 4 | Marie-Claire Dupont | Dupont | Madame Dupont |
=TEXTE.APRES(A2; " "; -1)Le numéro_instance=-1 cible l'espace le plus à droite, ce qui garantit que Jean-Pierre Rousseau donne bien Rousseau et non Pierre Rousseau.
Astuce de pro : Combine avec TEXTE.AVANT pour extraire le prénom : =TEXTE.AVANT(A2; " ") donne le premier prénom. Tu as ainsi les deux colonnes pour personnaliser tes courriers.
Technique : extraire les extensions de fichiers pour classification
Tu dois analyser un inventaire de fichiers et les classer par type. Les noms de fichiers contiennent souvent plusieurs points dans leur nom, donc il faut toujours extraire après le dernier point.
| A | B | C | |
|---|---|---|---|
| 1 | Nom de fichier | Extension | Type |
| 2 | rapport-financier.2024.xlsx | xlsx | Tableur |
| 3 | photo.vacances.2024.jpg | jpg | Image |
| 4 | contrat.client.final.pdf | Document |
=TEXTE.APRES(A2; "."; -1)Le -1 cible le dernier point, quelle que soit la complexité du nom : rapport-financier.2024.xlsx donne xlsx, pas 2024.xlsx.
Achat : découper des références produits structurées
Ton système ERP génère des codes produits structurés du type CATEGORIE-FAMILLE-GAMME-VARIANTE. Pour créer des rapports par gamme ou alimenter des filtres dynamiques, tu dois extraire la variante finale.
| A | B | C | |
|---|---|---|---|
| 1 | Code produit complet | Référence finale | Stock |
| 2 | ELEC-ORDI-LAP-PRO-15 | PRO-15 | 45 |
| 3 | ELEC-ORDI-LAP-GAMER-17 | GAMER-17 | 23 |
| 4 | ELEC-AUDIO-HP-STUDIO-5 | STUDIO-5 | 67 |
=TEXTE.APRES(A2; "LAP-")Ici, la fonction extrait tout ce qui se trouve après le préfixe de gamme LAP- : le délimiteur peut être une suite de caractères, pas seulement un seul symbole.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction TEXTE.APRES
Presque tous les ennuis avec TEXTE.APRES finissent par un #N/A, et derrière ce code se cache la même question : le délimiteur que tu cherches existe-t-il vraiment, écrit exactement comme ça, dans ta cellule ? Un "@" absent, une 3ème occurrence demandée alors qu'il n'y en a que deux, ou un "Fichier" cherché en "fichier" (la casse compte par défaut) : à chaque fois, rien n'est trouvé et la formule rend #N/A.
Les deux autres pièges sont plus sournois car ils ne plantent pas : un espace invisible collé en tête de résultat, et le #NOM? qui trahit une version d'Excel antérieure à 2021 où la fonction n'existe pas encore.
Erreur #N/A : délimiteur introuvable dans le texte
TEXTE.APRES renvoie #N/A quand le délimiteur spécifié n'existe pas dans la chaîne source. Par exemple, chercher "@" dans "jean.dupont.gmail.com" (sans arobase) ne trouve rien.
Solution : Utilise le paramètre si_introuvable pour définir une valeur de remplacement : =TEXTE.APRES(A1; "@"; ; ; "Email invalide"). C'est plus efficace qu'entourer avec SIERREUR sur de grandes plages.
Erreur #N/A : occurrence demandée inexistante
Si tu demandes la 3ème occurrence d'un délimiteur alors qu'il n'apparaît que 2 fois dans le texte, TEXTE.APRES renvoie #N/A. Les données ne sont pas toujours uniformes.
Solution : Utilise -1 pour cibler la dernière occurrence, ce qui est robuste quelle que soit la structure de la chaîne. Ou utilise si_introuvable pour gérer les cas sans assez d'occurrences.
Mauvais résultat à cause de la casse du délimiteur
Par défaut, TEXTE.APRES distingue majuscules et minuscules. Chercher "fichier" ne trouvera pas "Fichier" ou "FICHIER" dans le texte, et la formule renvoie #N/A.
Solution : Passe mode_correspondance à 1 pour ignorer la casse : =TEXTE.APRES(A1; "fichier"; 1; 1). Ou normalise tes données en amont avec MINUSCULE ou MAJUSCULE.
Espaces résiduels en début de résultat
Les données importées contiennent souvent des espaces invisibles. Si le texte est "Sophie Martin" (double espace), extraire après le premier espace renvoie " Martin" avec un espace en tête.
Solution : Nettoie les données en amont avec SUPPRESPACE : =TEXTE.APRES(SUPPRESPACE(A1); " "). SUPPRESPACE supprime les espaces en tête, en queue et réduit les espaces multiples internes à un seul.
Erreur #NOM? : version d'Excel incompatible
TEXTE.APRES n'est pas reconnue par les versions antérieures à Excel 2021. Les versions 2016 et 2019 affichent #NOM?.
Solution : Sur les versions plus anciennes, reproduis le comportement avec les fonctions classiques : =DROITE(A1; NBCAR(A1)-CHERCHE("@";A1)) extrait le domaine d'un email. C'est plus complexe mais compatible avec toutes les versions.
TEXTE.APRES vs DROITE vs STXT vs CHERCHE
Choisis TEXTE.APRES dès que le point de découpe est un caractère ou un mot, pas une position fixe : c'est la seule des quatre à savoir viser la dernière occurrence d'un délimiteur (numéro_instance=-1), à ignorer la casse au besoin et à renvoyer une valeur de secours plutôt qu'une erreur. DROITE et STXT, elles, comptent un nombre de caractères ou partent d'une position figée — parfaites quand la longueur ne bouge jamais, inutilisables sur un domaine email ou une extension de fichier de longueur variable.
CHERCHE ne fait que te donner la position du délimiteur, jamais le texte ; tu devrais la combiner avec DROITE pour obtenir ce que TEXTE.APRES sort d'un coup. Le vrai arbitrage reste la disponibilité : TEXTE.APRES exige Excel 365 ou 2021, alors que les trois autres tournent sur toutes les versions.
| Critère | TEXTE.APRES | DROITE | STXT | CHERCHE |
|---|---|---|---|---|
| Extraction par délimiteur | Oui, native | Non (nombre de car. fixe) | Non (position fixe) | Non (trouve la position seulement) |
| Dernière occurrence | Oui (numéro_instance=-1) | Non applicable | Non applicable | Combinaison complexe requise |
| Gestion casse | Oui (mode_correspondance) | Non | Non | Insensible à la casse |
| Valeur par défaut si absent | Oui (si_introuvable) | Non | Non | Non (retourne #VALEUR!) |
| Disponibilité | Excel 365 / 2021+ | Toutes versions | Toutes versions | Toutes versions |
Questions fréquentes sur la fonction TEXTE.APRES
Que se passe-t-il si le délimiteur n'est pas trouvé ?
TEXTE.APRES renvoie #N/A si le délimiteur est absent du texte source. Pour éviter cette erreur, utilise le cinquième paramètre si_introuvable : =TEXTE.APRES(A1; "@"; ; ; "Aucun email") renvoie "Aucun email" au lieu de l'erreur.
Comment extraire le texte après la dernière occurrence d'un délimiteur ?
Utilise numéro_instance=-1 : =TEXTE.APRES(A1; " "; -1) renvoie tout ce qui se trouve après le dernier espace. Très utile pour le nom de famille dans un nom complet avec prénom composé, ou pour l'extension d'un fichier avec plusieurs points.
TEXTE.APRES est-elle disponible dans toutes les versions d'Excel ?
Non, TEXTE.APRES est exclusive à Excel 365 et Excel 2021. Pour les versions antérieures, utilise une combinaison de DROITE, CHERCHE et NBCAR. Par exemple : =DROITE(A1; NBCAR(A1)-CHERCHE("@";A1)) extrait le domaine d'un email.
Peut-on utiliser TEXTE.APRES avec plusieurs délimiteurs différents ?
Non, TEXTE.APRES n'accepte qu'un seul délimiteur. Pour gérer plusieurs séparateurs possibles (espace ou tiret selon les cas), normalise d'abord tes données avec SUBSTITUE pour remplacer tous les délimiteurs variables par un seul, puis applique TEXTE.APRES.
Comment ignorer la casse dans la recherche du délimiteur ?
Mets le paramètre mode_correspondance à 1 : =TEXTE.APRES(A1; "mot"; 1; 1) trouve "mot", "Mot" ou "MOT". Particulièrement utile pour des données saisies manuellement par des utilisateurs.
Comment combiner TEXTE.APRES et TEXTE.AVANT pour extraire un segment central ?
Imbrique les deux fonctions : =TEXTE.AVANT(TEXTE.APRES(A1; "-"; 1); "-"; 1) extrait le segment entre le premier et le deuxième tiret dans CATEGORIE-FAMILLE-REFERENCE. Commence par TEXTE.APRES pour te positionner après le premier délimiteur, puis TEXTE.AVANT pour t'arrêter avant le suivant.
Quelle est la différence entre TEXTE.APRES et CHERCHE ?
CHERCHE renvoie la position (numérique) du délimiteur dans la chaîne, mais pas le texte lui-même. Tu dois ensuite combiner CHERCHE avec DROITE ou STXT pour extraire le texte. TEXTE.APRES fait tout en une seule formule et gère directement les occurrences multiples.
Pour aller plus loin
Les fonctions similaires : TEXTE.AVANT, DROITE, STXT, CHERCHE, SUBSTITUE
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

