La fonction TEXTE d’Excel est un atout indispensable dès que l’on souhaite afficher des données numériques ou temporelles sous un format lisible et personnalisé. Que ce soit pour transformer une date brute en texte plus convivial ou pour ajouter des zéros non significatifs à un nombre, TEXTE permet d’aller bien au-delà de l’affichage standard. Dans cet article, nous passerons en revue la syntaxe, les différents codes de format et plusieurs mises en pratique pour tirer pleinement parti de cette fonction.
Qu’est-ce que la fonction TEXTE ?
La fonction TEXTE prend deux arguments : la valeur à convertir et le masque de format. Elle renvoie toujours une chaîne de caractères, même si l’entrée est numérique ou date. L’intérêt ? Contrôler précisément l’apparence des données sans altérer leur origine, ce qui est particulièrement utile pour :
- Standardiser l’affichage dans des rapports ou des tableaux de bord.
- Préparer des libellés pour des publipostages ou des étiquettes.
- Associer un format défini à un calcul intermédiaire.
Syntaxe et codes de format
Syntaxe de base
La syntaxe de la fonction se présente ainsi :
=TEXTE(valeur; « format »)
Où :
- valeur peut être une référence de cellule, un calcul ou une date.
- format est une chaîne entre guillemets, composée de codes de mise en forme : chiffres, séparateurs, textes littéraux.
Principaux codes pour les dates et heures
Voici les codes les plus utilisés pour les dates :
Code | Signification |
---|---|
jj | Jour sur deux chiffres (01 à 31) |
j | Jour sans zéro initial (1 à 31) |
mm | Mois sur deux chiffres (01 à 12) |
mmm | Mois abrégé (Jan, Fév, …) |
aaaa | Année sur quatre chiffres |
aa | Année sur deux chiffres |
hh | Heures (00 à 23) |
mm | Minutes (00 à 59) – attention au conflit avec le mois |
ss | Secondes (00 à 59) |
Par exemple, =TEXTE(A2; »jj mmm aaaa ») transforme 44197
en “15 mar 2021” si A2 contient une date Excel.
Codes pour les nombres
Pour les nombres, on utilise :
- 0 : chiffre obligatoire (remplace par 0 si aucune valeur).
- # : chiffre facultatif (n’apparaît que si nécessaire).
- , : séparateur de milliers.
- . : séparateur décimal.
- « texte » : affiche un texte littéral.
Par exemple :
=TEXTE(B2; »0 000.00 € ») pour obtenir le montant 1 234,50 € quand B2 vaut 1234.5.
Exemples pratiques et astuces
1. Conversion de dates vers un libellé plus explicite
Si vous souhaitez écrire les jours de la semaine dans un tableau de suivi, combinez le code jjjj
avec votre date :
- =TEXTE(C3; »jjjj ») → convertit
03/06/2022
en vendredi.
Cette méthode est plus souple que l’utilisation d’une colonne auxiliaire + INDEX ou RECHERCHEV pour afficher le nom du jour. Elle reste entièrement dynamique lors de filtres ou tris.
2. Préfixer des codes produits ou des numéros
Pour conserver une longueur fixe, par exemple des références à 8 chiffres :
- =TEXTE(D2; »00000000″) → affiche 00001234 quand D2 vaut 1234.
Cette technique s’intègre parfaitement dans les documents Excel qui seront exportés en CSV ou envoyés par mail, car le nombre de zéros garantis facilite la lecture ou l’import dans un autre système.
3. Afficher des décimales sans arrondir
À la différence de l’option “Décimales” qui arrondit, TEXTE va tronquer selon le format :
- =TEXTE(E2; »#.## ») sur 3,14159 donne 3,14.
Si vous voulez forcer l’affichage de n décimales, même si ce sont des zéros, utilisez 0
à la place de #
.
Comparaison avec d’autres fonctions Excel
Alors que GAUCHE, DROITE et STXT extraient ou coupent des parties de texte, la fonction TEXTE joue sur l’apparence de nombres et de dates. Elle ne sert pas à modifier la valeur brute, mais uniquement son format d’affichage.
Pour assembler plusieurs morceaux (texte, résultat de TEXTE, etc.), on utilise le symbole && ou la fonction CONCATENER. Exemple :
=TEXTE(F2; »jj/mm/aaaa ») & » – Commande n° » & TEXTE(G2; »0000″)
Tableau récapitulatif des formats courants
Objectif | Formule | Résultat |
---|---|---|
Date longue | =TEXTE(A2; »jjjj jj mmmm aaaa ») | mercredi 15 septembre 2021 |
Heure 24 h | =TEXTE(A2; »hh:mm:ss ») | 14:05:09 |
Numéro 6 chiffres | =TEXTE(B2; »000000″) | 001234 |
Monétaire | =TEXTE(B2; »#,##0.00 € ») | 1 234,50 € |
Pourcentage | =TEXTE(C2; »0.00% ») | 12.34% |
Cas d’usage avancés
Dans un tableau de bord où l’on croise des dates, des heures et des chiffres, l’usage de TEXTE permet de standardiser l’affichage au moment de l’export PDF. On peut aussi combiner cette fonction avec des segments pour filtrer dynamiquement des périodes : les étiquettes de segments afficheront des formats de date plus lisibles.
Enfin, dans le cadre d’un publipostage, si vous travaillez sur une base Word connectée à un fichier Excel, la colonne formatée par TEXTE garantit que les dates et montants conservent leur apparence en fusionnant dans les courriers.
Bonnes pratiques et pièges à éviter
- Attention à l’usage de
mm
pour le mois et les minutes ; préférez le code[$-fr-FR]mm
si nécessaire. - Sachez qu’un résultat de TEXTE ne peut pas être utilisé directement dans un calcul ; il faut conserver la valeur originale dans une autre cellule.
- Pour les exports, pensez à tester sur différents logiciels (OpenOffice, Google Sheets) si la compatibilité est requise.
- Ne surchargez pas vos formules : pour des formats très personnalisés, envisagez de recourir à une colonne auxiliaire ou une macro VBA.
FAQ
- 1. Pourquoi j’obtiens #VALEUR! avec TEXTE ?
- Assurez-vous que le premier argument est une valeur numérique ou une date reconnue par Excel. Un texte non convertible déclenche l’erreur.
- 2. Peut-on utiliser TEXTE pour changer la devise ?
- Oui, en ajoutant le symbole monétaire dans la chaîne de format (ex.
"#,##0.00 €"
). Il est aussi possible d’utiliser votre format local. - 3. Comment afficher le nom du mois en français ?
- Utilisez
mmm
oummmm
après avoir défini la langue (p. ex.[$-F800]mmmm
pour un mois complet). - 4. Est-ce que TEXTE fonctionne sur Excel Online ?
- Oui, la fonction est disponible sur toutes les versions récentes, y compris Excel 365 et Excel Online.