GAUCHE, DROITE et STXT sur Excel : extraire du texte
Apprenez à utiliser GAUCHE, DROITE et STXT avec NBCAR et TROUVE sur Excel pour extraire facilement une partie d un texte ou d une cellule.
Par Ayoub Farid · · 2 min de lecture
Lorsque l'information dont vous avez besoin est coincée au milieu d'une cellule plus longue ("INV-2026-0042", "Sam Lee", "rapport.xlsx"), ces trois fonctions Excel permettent de l'isoler facilement.
Remarque : les formules ci-dessous utilisent la syntaxe anglaise standard avec des virgules. Sur une version française d'Excel, utilisez les noms traduits et séparez les arguments par un point-virgule.
Les bases
Voici la structure de base (en français : GAUCHE, DROITE et STXT) :
=LEFT(text, num_chars)
=RIGHT(text, num_chars)
=MID(text, start_num, num_chars)
Avec la valeur "INV-2026-0042" saisie dans la cellule A2 :
| Formule | Résultat |
|---|---|
=LEFT(A2,3) | INV |
=RIGHT(A2,4) | 0042 |
=MID(A2,5,4) | 2026 |
*En français : =GAUCHE(A2;3), =DROITE(A2;4) et =STXT(A2;5;4).*
Longueurs variables : combiner avec TROUVE et NBCAR
Définir un nombre fixe de caractères fonctionne uniquement pour les formats standardisés. Pour extraire un prénom et un nom de famille, repérez l'espace :
Prénom :
=LEFT(A2,FIND(" ",A2)-1)
Nom de famille :
=RIGHT(A2,LEN(A2)-FIND(" ",A2))
- FIND (TROUVE) renvoie la position numérique de l'espace.
- LEN (NBCAR) renvoie la longueur totale de la chaîne de caractères.
*En français : =GAUCHE(A2;TROUVE(" ";A2)-1) et =DROITE(A2;NBCAR(A2)-TROUVE(" ";A2)).*
Extraire une extension de fichier
=RIGHT(A2,LEN(A2)-FIND(".",A2))
(Cette formule suppose qu'il n'y a qu'un seul point. Pour un fichier nommé "mon.rapport.xlsx", privilégiez TEXTAFTER comme expliqué ci-dessous).
Le résultat obtenu reste du texte
La formule =RIGHT(A2,4) renvoie "0042" sous forme de texte. Pour convertir ce résultat en valeur numérique exploitable dans vos calculs, écrivez =VALUE(RIGHT(A2,4)) (avec CNUM en français) ou utilisez le double signe moins : =--RIGHT(A2,4).
L'approche moderne : TEXTE.AVANT et TEXTE.APRES
Si vous utilisez Microsoft 365 ou Google Sheets, découvrez TEXTBEFORE et TEXTAFTER (TEXTE.AVANT et TEXTE.APRES) :
=TEXTBEFORE(A2," ") prénom
=TEXTAFTER(A2," ") nom de famille
=TEXTAFTER(A2,".",-1) texte situé après le dernier point
Ces fonctions rendent les formules de votre feuille de calcul bien plus lisibles. Pour séparer du contenu sur plusieurs colonnes d'un coup, consultez notre guide pour fractionner du texte sur Excel.
Questions fréquentes
Comment extraire le premier mot d'une cellule sur Excel ?
Utilisez =LEFT(A2,FIND(" ",A2)-1) (en français =GAUCHE(A2;TROUVE(" ";A2)-1)), ou =TEXTBEFORE(A2," ") (=TEXTE.AVANT(A2;" ")) avec Microsoft 365.
Comment récupérer les 4 derniers caractères d'une cellule ?
Écrivez simplement =RIGHT(A2,4) (en français =DROITE(A2;4)).
Pourquoi la fonction TROUVE (FIND) renvoie-t-elle l'erreur #VALEUR! ?
Le caractère recherché n'existe pas dans la cellule analysée. Pour gérer ce cas, vous pouvez imbriquer votre calcul dans IFERROR (SIERREUR) ou vérifier la cohérence de vos données.
Quelle est la différence entre TROUVE (FIND) et CHERCHE (SEARCH) ?
FIND (TROUVE) respecte strictement la casse (majuscules et minuscules) et n'accepte pas les caractères génériques. À l'inverse, SEARCH (CHERCHE) ignore la casse et autorise les caractères génériques comme * ou ?.