Aller au contenu
Texte

TEXTE.AVANT, TEXTE.APRES et FRACTIONNER.TEXTE

TEXTE.AVANT et TEXTE.APRES extraient ce qui précède ou suit un séparateur ; FRACTIONNER.TEXTE découpe un texte en plusieurs cellules. Plus besoin de calculer des positions avec CHERCHE.

  • TEXTE.AVANT
  • TEXTE.APRES
  • FRACTIONNER.TEXTE
  • SUBSTITUE
  • TEXTBEFORE
  • TEXTAFTER
  • TEXTSPLIT
  • séparateur
  • découper

Syntaxe

Modèle
=TEXTE.AVANT(texte ; délimiteur ; [n°_instance] ; … ; [si_introuvable])=TEXTE.APRES(texte ; délimiteur ; [n°_instance] ; … ; [si_introuvable])=FRACTIONNER.TEXTE(texte ; délimiteur_colonne ; [délimiteur_ligne])=SUBSTITUE(texte ; ancien_texte ; nouveau_texte ; [n°_occurrence])

Exemple

Exemple concret
Annuaire : e-mail en A2 (claire.martin@exemple.fr), adresse en B2 (12 rue Victor-Hugo, 69002, Lyon), montant importé en C2 ("12.5")=TEXTE.AVANT(A2 ; "@")          renvoie claire.martin=TEXTE.APRES(A2 ; "@")          renvoie exemple.fr=TEXTE.APRES(B2 ; ", " ; -1)    renvoie Lyon (après la dernière virgule)=FRACTIONNER.TEXTE(B2 ; ", ")    déborde sur 3 cellules : 12 rue Victor-Hugo | 69002 | Lyon=CNUM(SUBSTITUE(C2 ; "." ; ","))  renvoie le nombre 12,5

À retenir

  1. Disponibilité : TEXTE.AVANT, TEXTE.APRES et FRACTIONNER.TEXTE existent dans Microsoft 365 et Excel 2024 ; elles renvoient #NOM? dans Excel 2021 et les versions antérieures. SUBSTITUE existe partout.
  2. Un numéro d'instance négatif compte depuis la fin : =TEXTE.AVANT("rapport.final.xlsx" ; "." ; -1) renvoie rapport.final.
  3. Piège : si le délimiteur est absent, TEXTE.AVANT et TEXTE.APRES renvoient #N/A. Renseignez le dernier argument : =TEXTE.AVANT(A2 ; "@" ; ; ; ; "Pas d'e-mail").
  4. FRACTIONNER.TEXTE déborde sur plusieurs cellules : laissez la zone libre à droite, sinon #PROPAGATION!.
  5. SUBSTITUE remplace un texte partout, ou seulement la n-ième occurrence, et respecte la casse ; REMPLACER agit sur une position et un nombre de caractères.

Voir aussi