Éditeur Excel en ligne
Utiliser gratuitement

STXT dans Excel : syntaxe, exemples et erreurs

Mis à jour le 2026-10-14 · Gratuit · Compatible Excel et Google Sheets

Syntaxe

=STXT(texte, no_début, no_car)

Réponse rapide

STXT renvoie des caractères de n’importe où dans une cellule : =STXT(A2, 4, 4) transforme « AE-2026-041 » en « 2026 ». Donnez-lui une position de départ et un compte, et il découpe exactement cette tranche. Si le départ dépasse la longueur, il renvoie une chaîne vide ; en dessous de 1 ou compte négatif, il renvoie #VALEUR!.

Syntaxe

=STXT(texte, no_début, no_car)
ArgumentCe que ça veut dire
texteLa cellule ou le littéral contenant le texte à couper. Obligatoire.
no_débutOù commencer à couper, compté depuis 1 — 4 commence au quatrième caractère. Obligatoire, doit valoir 1 ou plus ; en dessous renvoie #VALEUR!.
no_carCombien de caractères prendre à partir de cette position : 4 en prend quatre. Obligatoire, doit valoir zéro ou plus ; un négatif renvoie #VALEUR!.

Selon vos paramètres régionaux, les arguments sont séparés par des points-virgules au lieu de virgules : =STXT(A2; 4; 4). C’est la norme dans les pays où la virgule sert de séparateur décimal.

STXT compte des caractères, ni octets ni mots : une lettre, un chiffre, un espace ou un emoji consomment chacun un compte. Les positions commencent à 1 — le caractère zéro n’existe pas, et STXT ne lit jamais à l’envers.

Exemples de base

=STXT(A2, 4, 4)

Le cheval de bataille des largeurs fixes : les codes produit « AE-2026-041 » livrent leur année « 2026 », les téléphones leur indicatif régional, les IDs de facture leur numéro de séquence — chaque fois que la partie utile habite à une position et une longueur connues.

=STXT(A2, TROUVE("-", A2) + 1, TROUVE("-", A2, TROUVE("-", A2) + 1) - TROUVE("-", A2) - 1)

La version dynamique : le TROUVE intérieur localise le premier tiret, le TROUVE extérieur cherche le second à partir de là, et STXT découpe ce qu’il y a entre les deux, donc « AE-2026-041 » donne « 2026 » et « US-Q3-772 » donne « Q3 » — sans positions codées en dur.

=STXT(A2, CHERCHE(" ", A2) + 1, 30)

Prend tout ce qui suit le premier espace : CHERCHE localise l’espace, +1 le saute, et 30 (un compte délibérément trop grand) attrape sans risque le reste de la cellule — « Jane Doe » donne « Doe » et « Winston Churchill » donne « Churchill ».

=SIERREUR(STXT(A2, TROUVE("-", A2) + 1, 4), A2)

La version de production : les lignes sans tiret exploseraient en #VALEUR! car TROUVE renvoie #VALEUR! quand le texte manque. Enveloppée dans SIERREUR, ces lignes reviennent entières et la colonne tient.

STXT renvoie du texte même en coupant des chiffres : STXT(123456, 2, 3) donne le texte « 234 », qui ne somme pas. Enveloppez les extractions numériques dans CNUM (=CNUM(STXT(A2, 4, 4))) et souvenez-vous que les dates sont des numéros de série — STXT coupe dans le numéro, pas dans l’affichage.

Erreurs courantes et comment les corriger

SymptômeCause la plus couranteCorrectif
#VALEUR!no_début est en dessous de 1, ou no_car est négatif — ou le TROUVE/CHERCHE associé ne localise pas le délimiteur et renvoie son propre #VALEUR!.Utilisez un départ de 1 ou plus et un compte de 0 ou plus, et enveloppez la recherche dans SIERREUR avec une solution de repli.
Une chaîne vide revientno_début dépasse la longueur du texte — STXT lit au-delà de la fin et ne trouve rien.Vérifiez que le texte est assez long, ou bornez le départ avec MIN(no_début, NBCAR(A2)) pour rester dedans.
La coupe tombe un caractère trop tôt ou trop tardErreur de un autour du délimiteur : +1 le saute, -1 finit juste avant le suivant.Déroulez la position sur une ligne — TROUVE renvoie la position du délimiteur, donc TROUVE(...)+1 commence juste après, et la différence entre deux TROUVE moins 1 est la longueur de la tranche.
Les chiffres extraits ne calculent pasSTXT renvoie toujours du texte : « 007 » reste « 007 » et « 234 » ne somme pas.=CNUM(STXT(A2, 4, 4)) convertit les chiffres extraits en vrai nombre (les zéros en tête disparaissent — c’était du texte).
Le résultat est décaléLa cellule commence par un remplissage invisible, donc la position 4 n’est pas où vous croyez.Nettoyez d’abord : =STXT(SUPPRESPACE(A2), 4, 4), ou ôtez les espaces de toute la colonne en une passe.

Ce n’est pas une erreur, mais un comportement classique de STXT : quand no_début plus no_car dépasse la longueur de la cellule, STXT renvoie simplement jusqu’à la fin — sans erreur ni remplissage. =STXT("Salut", 1, 50) donne « Salut ». Cela fait d’un grand compte un « tout à partir d’ici » sûr.

STXT face à GAUCHE et DROITE

STXTGAUCHEDROITE
Commence à couper àLa position de votre choixToujours le premier caractèreToujours le dernier caractère
ArgumentsTexte, une position de départ et un compteTexte et un compteTexte et un compte
Idéal pourSegments du milieu — indicatifs régionaux, partie entre deux délimiteursPréfixes, prénoms, en-têtes à largeur fixeSuffixes, noms de famille, extensions de fichier
Limites dynamiquesLes deux extrémités bougent — TROUVE alimente départ et compteSeule la fin bouge (via TROUVE/CHERCHE)Seul le début bouge (via TROUVE/CHERCHE et NBCAR)

STXT est le cas général : =GAUCHE(A2, 4) est =STXT(A2, 1, 4), et =DROITE(A2, 4) équivaut à =STXT(A2, NBCAR(A2) - 3, 4) quand la cellule est assez longue. GAUCHE et DROITE sont des commodités pour les bords ; dès que la tranche est au milieu, STXT est le seul des trois qui s’applique.

STXT face à Convertir, TEXTE.AVANT et TEXTE.APRES

STXT (+ TROUVE/CHERCHE)Convertir (texte en colonnes)TEXTE.AVANT / TEXTE.APRES (Microsoft 365)
SortieUne formule vivante dans une nouvelle colonne ; la source reste intacteDécoupe les cellules sur place et peut écraser les colonnes voisinesDes formules vivantes : =TEXTE.AVANT(A2, "-") et =TEXTE.APRES(A2, "-")
Logique du délimiteurConstruite à la main avec TROUVE/CHERCHE et des offsets +/-Par boîte de dialogue, avec aperçu des délimiteurs répétésUn argument chacune — sans TROUVE, sans maths d’offset
Segment entre deux délimiteursNatif — STXT coupe entre deux TROUVEPossible mais embrouillé avec des divisions consécutivesEmpile TEXTE.APRES(TEXTE.AVANT(A2, délim2), délim1) — lisible mais deux fonctions
Disponible dansToutes les versions d’Excel et Google SheetsToutes les versions d’ExcelExcel 365 / 2021 et plus récent uniquement

Choisissez selon la durée de vie : les formules STXT pour une analyse qui survit aux importations et actualisations, Convertir pour un remodelage unique d’une table finie, TEXTE.AVANT/TEXTE.APRES si votre Excel est récent et que le segment colle à un seul délimiteur d’un côté.

STXT dans Google Sheets

  • Syntaxe et valeurs par défaut identiques — les formules ci-dessus se collent telles quelles dans Sheets.
  • Dans les paramètres à virgule décimale, les arguments passent au point-virgule : =STXT(A2; 4; 4), comme dans Excel.
  • TROUVE reste sensible à la casse et CHERCHE reste insensible avec jokers — le duo se comporte pareil.
  • Pour les segments du milieu par motif, Sheets ajoute REGEXEXTRACT, qui sort « ce qu’il y a entre deux tirets » en une expression sans imbriquer TROUVE.

Limites et conseils avancés

  • Une coupe par appel : découper un code en trois morceaux demande trois colonnes — GAUCHE, STXT et DROITE en rangée, le plan d’analyse classique.
  • TROUVE contre CHERCHE est un choix délibéré : CHERCHE pour les délimiteurs insensibles à la casse comme l’espace ou le tiret, TROUVE quand « a » et « A » doivent viser différemment.
  • Enveloppez dans SIERREUR toute extraction pilotée par délimiteur — une seule ligne sans séparateur propage le #VALEUR! dans toute la colonne.
  • Les chiffres restent du texte après la coupe : =CNUM(STXT(A2, 4, 4)) est le chemin du retour vers un nombre calculable.
  • Un no_car délibérément trop grand est une fonctionnalité, pas un bug : =STXT(A2, CHERCHE(" ", A2) + 1, 999) attrape sans risque « tout après le premier espace » sans mesurer la longueur d’abord.

Voyez STXT comme la station intermédiaire d’une chaîne d’analyse : SUPPRESPACE ôte le remplissage, CHERCHE localise le premier délimiteur, un CHERCHE imbriqué trouve le second, STXT coupe le creux entre les deux, CNUM convertit si c’est numérique. Chaque étape reste dans sa propre colonne ; quand le format d’import changera le mois prochain, une seule formule bougera.

Outils associés

Fonctions associées

Questions fréquentes

Que fait la fonction STXT dans Excel ?

Elle renvoie une tranche de caractères de n’importe où dans une cellule : =STXT(A2, 4, 4) prend quatre caractères à partir de la position 4. Contrairement à GAUCHE et DROITE, STXT exige à la fois une position de départ et un compte, donc il peut découper n’importe quel segment du milieu.

Comment extraire le texte entre deux délimiteurs avec STXT ?

Localisez les deux délimiteurs et coupez entre eux : =STXT(A2, TROUVE("-", A2) + 1, TROUVE("-", A2, TROUVE("-", A2) + 1) - TROUVE("-", A2) - 1). Le TROUVE intérieur trouve le premier tiret, l’extérieur le second, et la différence moins un est la longueur de la tranche.

Pourquoi STXT renvoie-t-elle #VALEUR! ?

Soit no_début est en dessous de 1, soit no_car est négatif, soit un TROUVE/CHERCHE imbriqué n’a pas trouvé le délimiteur — TROUVE renvoie #VALEUR! quand le texte manque et STXT en hérite. Utilisez départ ≥ 1, compte ≥ 0, et enveloppez la recherche dans SIERREUR avec une solution de repli.

Que se passe-t-il quand no_début dépasse la longueur du texte ?

STXT renvoie une chaîne vide — il lit au-delà de la fin et ne trouve rien. =STXT("Salut", 10, 4) donne « ». C’est utile pour la logique « s’il y a un suffixe, prends-le ; sinon, vide », mais cela surprend qui attendait une erreur.

Quelle différence entre STXT et GAUCHE ou DROITE ?

STXT commence où vous voulez et exige une position de départ et un compte ; GAUCHE commence toujours au caractère 1 et n’a besoin que d’un compte ; DROITE commence toujours à la fin et n’a besoin que d’un compte. STXT est le cas général — GAUCHE et DROITE sont des commodités pour les bords.

Pourquoi les chiffres extraits par STXT ne calculent-ils pas ?

STXT renvoie du texte, donc son « 234 » est une étiquette, pas une valeur. Convertissez avec =CNUM(STXT(A2, 4, 4)) — les zéros en tête disparaissent en nombre réel, car ils n’existaient qu’en texte.

STXT fonctionne-t-elle dans Google Sheets ?

Oui — même nom, mêmes arguments, même duo TROUVE/CHERCHE et mêmes points-virgules dans les réglages à virgule décimale. Sheets propose en plus REGEXEXTRACT pour les extractions par motif de segments du milieu.

Prêt à l’essayer avec votre propre fichier ?

Ouvrir Convertir du texte en colonnes dans Excel — c’est gratuit