Qu'est-ce que la fonction CTXT ?
CTXT (FIXED en anglais) te sert dès que tu veux coller un montant lisible au milieu d'une phrase ou harmoniser l'affichage de chiffres qui sortent d'un calcul avec trop de décimales : contrairement à ARRONDI, elle te rend directement du texte déjà prêt à afficher.
C'est la fonction qui te sert à coller un montant lisible au milieu d'une phrase (« Total : 1 234,50 € »), à homogénéiser des chiffres qui sortent d'un calcul, à préparer un export sans séparateur, ou à arrondir l'affichage aux milliers dans un tableau de bord. Contrairement à ARRONDI qui te rend un nombre, CTXT te rend du texte déjà mis en forme.
Syntaxe
=CTXT(nombre; décimales; no_séparateur)Clique sur un argument pour aller à son explication.
CTXT utilise les séparateurs de ta version régionale d'Excel : en français, la virgule pour les décimales et l'espace pour les milliers.

Comprendre chaque paramètre de la fonction CTXT
Seul le premier argument est obligatoire. Les deux suivants sont optionnels mais changent tout : le deuxième règle la précision (et accepte des valeurs négatives), le troisième décide si tu gardes ou non les séparateurs de milliers.
nombre
: le nombre à mettre en formeÇa peut être une valeur directe comme 1234,5, une référence de cellule comme A1, ou le résultat d'un calcul comme B1*1,2.
Ce doit être une valeur numérique : si tu passes du texte (une cellule contenant "1234" saisi comme texte, par exemple), CTXT renvoie #VALEUR!. Convertis-le d'abord avec CNUM si besoin.
décimales
: le nombre de chiffres à afficher après la virgule(facultatif)Si tu l'omets, Excel prend 2 par défaut. La valeur est arrondie à cette précision : =CTXT(1234,567; 2) donne 1 234,57.
Elle peut être négative pour arrondir à gauche de la virgule : =CTXT(1234567; -3) renvoie 1 235 000 (arrondi au millier le plus proche). Pratique pour des tableaux de bord où tu ne veux afficher que les grands ordres de grandeur.
no_séparateur
: une valeur logique qui décide de l'affichage des séparateurs de milliers(facultatif)Omise ou FAUX, tu gardes les séparateurs (1 234,50). À VRAI, ils disparaissent : =CTXT(1234,5; 2; VRAI) renvoie 1234,50.
Mets-la à VRAI quand le résultat part vers un autre système (export CSV, base de données, concaténation dans un identifiant) qui n'attend pas d'espaces dans les nombres.

Exemples pratiques pas à pas
Comment convertir un nombre en texte à décimales fixes avec la fonction CTXT
Les écritures du mois partent dans un rapport demain matin, et leurs montants bruts traînent trois ou quatre décimales : 1234,5673 sur une ligne, 45678,905 sur une autre. Tu veux une colonne où chaque montant s'affiche au centime, séparateur de milliers compris, sans repasser cellule par cellule ni compter sur un format d'affichage qui sautera à l'export. La fonction CTXT te renvoie le montant déjà mis en forme, ligne après ligne.
- 1Dans une cellule, écris
=CTXT(. - 2En 1er argument : clique sur la cellule du montant brut à mettre en forme,
C2. Elle contient1234,5673, et comme la formule pointe la cellule plutôt que ce chiffre écrit en dur, chaque ligne traitera son propre montant à la recopie. - 3En 2ᵉ argument : saisis le nombre de chiffres voulus après la virgule,
2. La fonction CTXT arrondit la valeur à cette précision avant de l'écrire, si bien que les quatre décimales de1234,5673se referment sur1 234,57. - 4Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas. Chaque écriture affiche alors son montant au centime,
8 901,20sur la ligne du journal des ventes comme45 678,91sur celle de la banque.
=CTXT(C2; 2)1234,5673, l'arrondit au centime et la renvoie sous forme de texte déjà calibré : 1 234,57. L'espace des milliers apparaît tout seul parce que le troisième argument est resté de côté, et la colonne entière s'aligne, quel que soit le nombre de décimales du montant d'origine.Comment arrondir l'affichage au millier avec la fonction CTXT
Le comité de direction veut une vue des budgets consommés, et personne autour de la table ne lira 1 234 567 € à l'euro près. Tu as le montant exact de chaque poste et tu veux une colonne de synthèse à l'échelle du millier, sans toucher aux chiffres d'origine qui servent encore aux calculs. La fonction CTXT accepte un nombre de décimales négatif et te sort cet affichage arrondi d'un coup, sans colonne de calcul intermédiaire.
- 1Dans une cellule, écris
=CTXT(. - 2En 1er argument : clique sur la cellule du budget exact,
B2. Elle contient1234567, le montant consommé par le poste Achats. Cette valeur reste un nombre dans sa colonne, donc elle demeure disponible pour tes totaux pendant que la fonction CTXT en écrit une version lisible ailleurs. - 3En 2ᵉ argument : saisis la précision de l'arrondi,
-3. Un nombre négatif ne demande aucun chiffre après la virgule. Il décale l'arrondi de trois rangs vers la gauche, si bien que la fonction CTXT ramène1234567au millier le plus proche et renvoie1 235 000. - 4Ferme la parenthèse et appuie sur Entrée, puis recopie la formule sur les autres postes. Tous les budgets se lisent alors à la même échelle,
77 000pour la logistique comme4 522 000pour le marketing.
=CTXT(B2; -3)-3 comme un arrondi à gauche de la virgule : les trois derniers chiffres de 1 234 567 cèdent la place au millier le plus proche, soit 1 235 000. La donnée d'origine ne bouge pas dans sa colonne, seul son affichage est simplifié.
Les erreurs fréquentes avec la fonction CTXT
Presque toutes les galères avec CTXT viennent d'une confusion : soit avec sa cousine STXT (qui, elle, découpe du texte), soit avec le fait que le résultat n'est plus un nombre mais une chaîne.
Confondre CTXT avec STXT pour extraire du texte
CTXT formate un nombre, elle n'extrait rien. Si tu écris =CTXT("75001 Paris"; 2; 5) en espérant récupérer un morceau de texte, tu obtiens #VALEUR! car le premier argument doit être un nombre.
Solution : Utilise STXT pour extraire un segment de texte : =STXT(A2; 7; 5). Garde CTXT uniquement pour mettre un nombre en forme.
Vouloir additionner un résultat de CTXT
Le retour de CTXT est du texte, pas un nombre. Une SOMME sur une colonne de =CTXT(...) renvoie 0 ou ignore les valeurs, car Excel n'y voit que des chaînes de caractères.
Solution : Reconvertis en nombre avec CNUM avant de calculer : =SOMME(CNUM(B2:B10)) en matriciel, ou garde la colonne brute pour les calculs et n'utilise CTXT que pour l'affichage.
Erreur #VALEUR! sur une cellule qui contient du texte
Si le premier argument n'est pas numérique (un nombre saisi comme texte, une cellule importée mal typée), CTXT renvoie #VALEUR!. Elle ne travaille que sur de vraies valeurs numériques.
Solution : Convertis d'abord avec CNUM : =CTXT(CNUM(A2); 2). Vérifie aussi que la cellule source n'a pas d'apostrophe ni d'espace parasite (SUPPRESPACE).

CTXT vs TEXTE vs ARRONDI
Prends CTXT quand tu veux juste un nombre en texte avec des décimales fixes et, éventuellement, les milliers. Passe à TEXTE dès que tu as besoin d'un format précis (devise, pourcentage, date). Reste sur ARRONDI si le résultat doit rester un nombre pour d'autres calculs.
| Critère | CTXT | TEXTE | ARRONDI |
|---|---|---|---|
| Type de résultat | Texte | Texte | Nombre |
| Contrôle du format | Décimales + milliers | Total (code format) | Décimales seulement |
| Séparateur de milliers | Oui (option) | Oui (via le code) | Non |
| Devise, %, date | Non | Oui | Non |
| Cas d'usage typique | Montant lisible dans une phrase | « 1 234,50 € » ou « 12,5 % » | Arrondir une valeur à recalculer |

Astuces avancées avec CTXT
Coller un montant formaté dans une phrase
CTXT brille quand tu concatènes un nombre dans du texte : ="Solde : "&CTXT(A1; 2)&" €" donne Solde : 1 234,50 €. Sans elle, Excel afficherait Solde : 1234,5 €, sans les décimales fixes ni le séparateur.
C'est la façon la plus simple d'intégrer un chiffre propre dans un e-mail, une facture ou un libellé automatique.
Arrondir l'affichage aux milliers ou aux millions
Les décimales négatives déplacent l'arrondi à gauche de la virgule : -3 arrondit au millier, -6 au million. =CTXT(1234567; -6) renvoie 1 000 000.
Parfait pour des reportings de direction où seuls comptent les grands ordres de grandeur, sans toucher à la donnée d'origine.
Neutraliser les séparateurs pour un export
Le troisième argument à VRAI retire les espaces des milliers, indispensable quand le texte part vers un outil qui les rejette : =CTXT(A1; 2; VRAI) produit 1234,50.
Tu gardes une précision fixe tout en restant compatible avec un import CSV ou une concaténation dans une référence.
Questions fréquentes
Non, et c'est la confusion la plus fréquente. CTXT met un nombre en forme (décimales fixes, séparateurs de milliers) et renvoie du texte. STXT, elle, extrait un morceau de texte à partir d'une position donnée.
Si tu veux récupérer un code postal dans une adresse, c'est STXT qu'il te faut. Si tu veux afficher 1 234,50 à partir de 1234,5, c'est CTXT.
C'est du texte, toujours. Même si tu vois 1 234,50 s'afficher, Excel le traite comme une chaîne de caractères et non comme une valeur calculable.
Pour refaire des calculs dessus, reconvertis-le en nombre avec CNUM. En pratique, on garde souvent la colonne de chiffres bruts pour les calculs et on n'utilise CTXT que pour l'affichage.
L'argument décimales peut être négatif, mais il ne fait pas apparaître de chiffres : il arrondit à gauche de la virgule. =CTXT(1234567; -3) renvoie 1 235 000, arrondi au millier.
Utilise-le pour des affichages de synthèse où tu ne veux montrer que les grands ordres de grandeur.
CTXT est rapide mais limitée : uniquement des décimales et l'option des milliers. TEXTE prend un code de format complet et gère la devise, les pourcentages, les dates, les couleurs conditionnelles.
Pour un simple montant au centime, CTXT suffit. Dès que tu veux 1 234,50 € ou 12,5 %, passe à TEXTE.
Pour aller plus loin
Continue sur ta lancée après la fonction CTXT : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



