Fonctions texte Excel : le guide complet (CONCAT, GAUCHE, STXT, SUBSTITUE…)

Excel ne sert pas qu'à calculer des nombres. Les fonctions texte permettent d'assembler des noms, d'extraire des codes, de nettoyer des imports, de convertir des formats. Voici les 11 fonctions texte incontournables, avec des exemples concrets immédiatement utilisables. ✍️

📋 Vue d'ensemble — Pourquoi les fonctions texte sont indispensables

En entreprise, une large partie des données arrive sous forme de texte brut : exports CRM, fichiers CSV, bases RH. Ces données sont rarement propres. Elles contiennent des espaces parasites, des casses mélangées, des informations collées qu'il faut séparer, des numéros stockés comme texte qu'il faut convertir en nombres.

Les fonctions texte Excel résolvent tous ces problèmes sans macro, sans copier-coller manuel. Elles se combinent entre elles pour construire des transformations puissantes en quelques formules.

💡 Règle d'or : les fonctions texte renvoient toujours du texte. Si vous avez besoin d'un nombre en résultat, combinez avec CNUM() ou multipliez par 1.

🔗 1. Assembler du texte — CONCAT et l'opérateur &

L'opérateur & — la méthode rapide

Pour coller deux valeurs ensemble, l'opérateur & est le plus simple :

=A2&" "&B2

Si A2 = "Martin" et B2 = "Sophie", le résultat est Martin Sophie. L'espace entre guillemets ajoute un séparateur.

CONCAT — pour les plages entières

=CONCAT(A2:A10)

Concatène toutes les valeurs d'une plage d'un coup. Idéal pour assembler une liste sans écrire 10 &.

JOINDRE.TEXTE — avec séparateur personnalisé

=JOINDRE.TEXTE(", "; VRAI; A2:A10)

Le premier argument est le séparateur, le deuxième (VRAI) ignore les cellules vides. Parfait pour créer des listes séparées par virgules.

📌 Exemple concret : assembler prénom + nom + service pour un annuaire.
=JOINDRE.TEXTE(" — "; VRAI; B2; C2; D2)Martin Sophie — Comptabilité

✂️ 2. Extraire des parties — GAUCHE, DROITE, STXT

GAUCHE — extraire depuis le début

=GAUCHE(A2; 3)

Renvoie les 3 premiers caractères. Si A2 = "FR-2024-001", le résultat est FR-. Utile pour extraire les préfixes de codes produits, de codes pays, de numéros de dossier.

DROITE — extraire depuis la fin

=DROITE(A2; 3)

Renvoie les 3 derniers caractères. Si A2 = "REF-2024-ABC", le résultat est ABC. Pratique pour extraire les suffixes, extensions ou identifiants de fin de chaîne.

STXT — extraire au milieu

=STXT(A2; 4; 4)

Syntaxe : STXT(texte; position_départ; nombre_caractères). Si A2 = "FR-2024-001", =STXT(A2; 4; 4) renvoie 2024 (commence au 4ème caractère, prend 4 caractères).

📌 Astuce combinée : pour extraire dynamiquement une partie dont la longueur varie, combinez avec TROUVE ou CHERCHE pour repérer le séparateur :
=STXT(A2; TROUVE("-"; A2)+1; TROUVE("-"; A2; TROUVE("-"; A2)+1)-TROUVE("-"; A2)-1)

📏 3. Mesurer — NBCAR

NBCAR — longueur d'une chaîne

=NBCAR(A2)

Renvoie le nombre de caractères, espaces inclus. Utilisations courantes :

  • Valider qu'un code a exactement le bon nombre de caractères : =SI(NBCAR(A2)=10; "OK"; "Erreur")
  • Compter les mots : =NBCAR(SUPPRESPACE(A2))-NBCAR(SUBSTITUE(A2;" ";""))+1
  • Trouver la position du dernier séparateur dans une chaîne

🧹 4. Nettoyer — SUPPRESPACE et EPURAGE

SUPPRESPACE — supprimer les espaces parasites

=SUPPRESPACE(A2)

Supprime les espaces en début et fin de cellule, et remplace les espaces multiples internes par un seul espace. Incontournable après un import CSV ou un copier-coller depuis le web.

Cas typique : " Martin Sophie ""Martin Sophie"

EPURAGE — supprimer les caractères non imprimables

=EPURAGE(A2)

Supprime les caractères de contrôle (retours à la ligne, tabulations…) qui se glissent dans les données importées. Souvent utilisé en combinaison avec SUPPRESPACE.

🔤 5. Changer la casse — MAJUSCULE, MINUSCULE, NOMPROPRE

MAJUSCULE / MINUSCULE

=MAJUSCULE(A2)      → "MARTIN SOPHIE"
=MINUSCULE(A2)      → "martin sophie"

Simple et direct. Utile pour normaliser des données avant une comparaison ou un tri.

NOMPROPRE — première lettre de chaque mot en majuscule

=NOMPROPRE(A2)

"MARTIN sophie" → "Martin Sophie". Pratique pour mettre en forme des noms propres issus d'imports en tout-majuscule.

⚠️ Attention : NOMPROPRE capitalise aussi les articles. "de la TOUR" deviendra "De La Tour". Pour des noms complexes, une vérification manuelle reste nécessaire.

🔄 6. Chercher et remplacer — TROUVE, CHERCHE, SUBSTITUE, REMPLACER

TROUVE — position d'un texte (sensible à la casse)

=TROUVE("@"; A2)

Renvoie la position du caractère cherché. =TROUVE("@"; "user@exemple.com") renvoie 5. Renvoie une erreur si introuvable — protégez avec SIERREUR.

CHERCHE — pareil mais insensible à la casse

=CHERCHE("excel"; A2)

Comme TROUVE mais ignore les majuscules/minuscules. Préférez CHERCHE pour les recherches dans du texte utilisateur.

SUBSTITUE — remplacer du texte dans une chaîne

=SUBSTITUE(A2; "ancien"; "nouveau")

Remplace toutes les occurrences d'un texte par un autre. Très puissant pour normaliser des données :

  • Supprimer des espaces insécables : =SUBSTITUE(A2; UNICAR(160); " ")
  • Supprimer les tirets d'un IBAN : =SUBSTITUE(A2; "-"; "")
  • Remplacer une virgule par un point (conversion décimale) : =SUBSTITUE(A2; ","; ".")

REMPLACER — remplacer par position

=REMPLACER(A2; 1; 2; "XX")

Syntaxe : REMPLACER(texte; position; nb_car; nouveau_texte). Remplace les 2 premiers caractères par "XX". Utile pour masquer une partie d'un code ou mettre à jour un préfixe de longueur connue.

🔢 7. Convertir — CNUM, TEXTE, VALEUR

CNUM — texte vers nombre

=CNUM(A2)

Convertit un texte qui ressemble à un nombre en vrai nombre. Cas fréquent après un import où les montants arrivent comme du texte (souvent identifiable par l'alignement à gauche dans la cellule).

Astuce équivalente : =A2*1 ou =A2+0 forcent aussi la conversion.

TEXTE — nombre vers texte formaté

=TEXTE(A2; "0,00 €")
=TEXTE(A2; "dd/mm/yyyy")
=TEXTE(A2; "00000")

Convertit un nombre ou une date en texte avec le format de votre choix. Indispensable pour concaténer un nombre formaté avec du texte :

="Total : "&TEXTE(SOMME(B2:B100); "# ##0,00 €")

Sans TEXTE, le nombre serait affiché brut (1234.5) au lieu de "1 234,50 €".

📌 TEXTE pour les dates : =TEXTE(AUJOURDHUI(); "dddd d mmmm yyyy")dimanche 1 juin 2026

🧩 8. Combinaisons avancées — formules texte en situation réelle

Extraire le prénom d'un nom complet (Prénom NOM)

=GAUCHE(A2; TROUVE(" "; A2)-1)

TROUVE repère l'espace, GAUCHE prend tout avant l'espace.

Extraire le nom de famille

=DROITE(A2; NBCAR(A2)-TROUVE(" "; A2))

NBCAR calcule la longueur totale, TROUVE repère l'espace, DROITE prend le reste.

Extraire le domaine d'une adresse email

=DROITE(A2; NBCAR(A2)-TROUVE("@"; A2))

Tester si une cellule contient un texte spécifique

=SI(ESTNUM(CHERCHE("urgent"; A2)); "🔴 Urgent"; "Normal")

CHERCHE renvoie un nombre si trouvé, une erreur sinon. ESTNUM valide le résultat.

Nettoyer un import complet en une formule

=NOMPROPRE(SUPPRESPACE(EPURAGE(A2)))

Supprime les caractères invisibles → supprime les espaces parasites → met en forme la casse. Trois fonctions en cascade pour un résultat propre.

⚠️ Erreurs fréquentes

GAUCHE/DROITE renvoient du texte, pas un nombre

Même si vous extrayez "2024" d'une chaîne, le résultat est du texte. Pour utiliser le résultat dans un calcul : =CNUM(GAUCHE(A2; 4)).

SUBSTITUE respecte la casse

=SUBSTITUE(A2; "Excel"; "Excel") ne remplacera pas "excel" en minuscules. Combinez avec MAJUSCULE si nécessaire.

TROUVE vs CHERCHE — toujours choisir CHERCHE pour du texte utilisateur

TROUVE est case-sensitive. Pour chercher "Paris" dans une cellule qui peut contenir "paris" ou "PARIS", utilisez CHERCHE.

NBCAR compte les espaces

=NBCAR(" abc ") renvoie 7, pas 3. Utilisez toujours =NBCAR(SUPPRESPACE(A2)) pour obtenir la longueur "nette".

✅ Synthèse — Quelle fonction utiliser selon le besoin ?

BesoinFonction
Assembler plusieurs cellulesCONCAT ou &
Assembler avec séparateurJOINDRE.TEXTE
Extraire depuis le débutGAUCHE
Extraire depuis la finDROITE
Extraire au milieuSTXT
Longueur d'une chaîneNBCAR
Supprimer espaces parasitesSUPPRESPACE
Supprimer caractères invisiblesEPURAGE
Mettre en majuscules/minusculesMAJUSCULE / MINUSCULE
Capitaliser chaque motNOMPROPRE
Trouver position d'un texteCHERCHE / TROUVE
Remplacer du texteSUBSTITUE
Remplacer par positionREMPLACER
Texte → nombreCNUM ou *1
Nombre → texte formatéTEXTE

Explorer toutes les formules Les 50 formules indispensables