Qu'est-ce que la fonction VALEUR.EN.TEXTE ?
Tu sors VALEUR.EN.TEXTE (VALUETOTEXT en anglais) dès que tu manies des colonnes de types mélangés (montants, dates, booléens, texte) et que tu ne veux pas te souvenir d'un code de format différent pour chacune avant de les rassembler. Elle te fait gagner le temps que TEXTE te ferait perdre à chercher le bon code pour chaque type de valeur.
Son terrain de jeu, c'est l'export et la normalisation : générer un fichier CSV avec des données mixtes, assembler des identifiants composites à partir de colonnes de types différents, ou déboguer une feuille en repérant les nombres stockés en texte. Elle évite les erreurs de conversion silencieuses qui surviennent quand on concatène des nombres ou des dates sans précaution.
Syntaxe
=VALEUR.EN.TEXTE(valeur; [format_texte])VALEUR.EN.TEXTE convertit les dates en leur numéro de série Excel (ex : 45306 pour le 15/01/2024), ce qui n'est pas lisible. Pour afficher une date au format jj/mm/aaaa, utilise TEXTE(date; "jj/mm/aaaa") à la place.

Comprendre chaque paramètre de la fonction VALEUR.EN.TEXTE
VALEUR.EN.TEXTE prend la valeur à convertir en premier, puis un format facultatif en second. Si tu laisses tomber ce deuxième argument, tu obtiens le format concis, celui qui rend la valeur telle que tu la lis ; mets 1 pour le format strict, qui entoure le texte de guillemets. C'est le seul réglage à connaître, et c'est lui qui décide si tu vois 42 ou "42".
valeur
: la valeur que tu veux transformer en texteIl peut s'agir de n'importe quel type de donnée Excel : un nombre (42, 1250,75), une date (01/01/2024), un booléen (VRAI/FAUX), ou du texte existant.
Quelques exemples directs : =VALEUR.EN.TEXTE(1250,75) renvoie 1250,75 ; =VALEUR.EN.TEXTE(VRAI) renvoie VRAI ; =VALEUR.EN.TEXTE(A2) convertit le contenu de A2 en texte, quel que soit son type.
format_texte
: le format de la conversion(facultatif)Tu as deux options : 0 (ou omis) pour le format concis, qui rend la valeur telle qu'on la lit, et 1 pour le format strict, qui encapsule les chaînes de caractères entre guillemets. Les nombres, les booléens et les erreurs ne sont jamais mis entre guillemets, dans un format comme dans l'autre.
Exemples : si A2 contient le texte Innovation, alors =VALEUR.EN.TEXTE(A2) renvoie Innovation et =VALEUR.EN.TEXTE(A2; 1) renvoie "Innovation". Si A2 contient le nombre 42, les deux formats renvoient 42.
Attention : Le format strict ne montre pas la formule d'une cellule, seulement sa valeur : si A2 contient =100+50, =VALEUR.EN.TEXTE(A2; 1) renvoie 150, pas =100+50. Pour récupérer le texte d'une formule, la fonction dédiée est FORMULETEXTE(A2).

Exemples pratiques pas à pas
Comment convertir une colonne de montants en texte avec la fonction VALEUR.EN.TEXTE
Un logiciel de compta attend un fichier où chaque montant est du texte, pas un nombre, faute de quoi il refuse l'import en bloc sans dire lequel le gêne. La colonne D contient les montants des factures (1250,75, 890,5, 2100), et l'objectif est d'obtenir la même colonne mais typée en texte, sans toucher aux valeurs. La fonction VALEUR.EN.TEXTE prend n'importe quelle valeur et en rend la version textuelle.
- 1Le premier argument,
valeur, reçoitD2, le montant à convertir. Il accepte tout ce qu'une cellule peut contenir, un nombre comme ici, mais aussi du texte, un booléen, une date ou même une erreur. - 2Le second argument,
format_texte, est laissé de côté. C'est ce qui déclenche le format concis, celui qui rend la valeur telle qu'on la lit : ajouter un1ici encadrerait le texte de guillemets, ce qui n'a pas d'intérêt sur une colonne de montants.
=VALEUR.EN.TEXTE(D2)1250,75 ressort identique à l'oeil nu, et c'est bien là tout le sujet : ce n'est plus le même type de donnée. La colonne d'origine est calée à droite comme tous les nombres, la colonne convertie se cale à gauche comme tout texte, alors que rien n'a bougé dans les chiffres. La conversion prend la valeur telle qu'elle est stockée, donc 3499,9 reste 3499,9 sans reprendre le zéro final d'un affichage à deux décimales.Comment repérer un nombre stocké en texte avec la fonction VALEUR.EN.TEXTE
Le total d'une colonne de montants tombe faux alors que chaque ligne a l'air normale, et c'est la panne la plus vicieuse d'Excel parce que rien ne la signale. Un nombre importé en texte s'affiche exactement comme un vrai nombre mais reste invisible aux calculs, et l'objectif est de le démasquer ligne par ligne plutôt qu'en cliquant chaque cellule. La fonction VALEUR.EN.TEXTE possède un second argument fait exactement pour ça.
- 1Le premier argument,
valeur, reçoitB2, le montant importé dont tu doutes. Tu recopies ensuite la formule vers le bas pour passer toute la colonne au crible d'un coup. - 2Le second argument,
format_texte, reçoit1, le format strict. Il entoure de guillemets tout ce qui est du texte et laisse nus les nombres, les booléens et les erreurs, ce qui suffit à trancher : ce qui ressort avec des guillemets n'est pas un nombre, quoi qu'en dise l'affichage.
=VALEUR.EN.TEXTE(B2; 1)"890,5" et "150" sortent entre guillemets, donc ce sont des textes déguisés en nombres. Le dégât se vérifie en une formule, puisque SOMME(B2:B5) rend 3350,75, c'est-à-dire 1250,75 + 2100 seulement : les deux intrus sont ignorés du total sans le moindre message.Comment assembler une ligne d'export avec les fonctions JOINDRE.TEXTE et VALEUR.EN.TEXTE
Le fichier attendu par la compta est un CSV où chaque facture tient sur une ligne, champs séparés par des points-virgules. Les trois colonnes à réunir n'ont pas le même type (une référence en texte, un statut en texte, un montant en nombre), et l'objectif est d'obtenir une ligne homogène par facture. La fonction VALEUR.EN.TEXTE met tout le monde d'accord sur le type, JOINDRE.TEXTE se charge du montage.
- 1Le premier argument de JOINDRE.TEXTE est le séparateur,
";", celui qui découpera les champs à la relecture du fichier. - 2Le deuxième argument vaut
VRAI: les champs vides sont ignorés plutôt que de laisser deux points-virgules qui se suivent. - 3Les arguments suivants sont les champs à réunir, chacun passé par la fonction VALEUR.EN.TEXTE :
VALEUR.EN.TEXTE(A2)pour la référence,VALEUR.EN.TEXTE(B2)pour le statut,VALEUR.EN.TEXTE(C2)pour le montant. Le premier argumentvaleurde chacune suffit, le format concis étant celui qu'attend un fichier d'export.
=JOINDRE.TEXTE(";"; VRAI; VALEUR.EN.TEXTE(A2); VALEUR.EN.TEXTE(B2); VALEUR.EN.TEXTE(C2))1250,75 entre dans la chaîne comme du texte assumé et non comme un nombre converti au passage par Excel. La fonction JOINDRE.TEXTE se contente ensuite d'intercaler le ; entre les morceaux, et la ligne CSV sort prête à coller dans le fichier.
Les erreurs fréquentes avec la fonction VALEUR.EN.TEXTE
Le malentendu qui revient le plus souvent, c'est d'attendre du format strict qu'il t'affiche une formule : il ne montre jamais que la valeur, et c'est FORMULETEXTE qu'il te faut. Les autres surprises tiennent à la valeur brute qu'il convertit : une date ressort en numéro de série (45306) et ton joli 1 250,75 € perd son habillage. Et si le nom est mal orthographié, tu récoltes #NOM? avant même d'avoir un résultat.
Le format strict ne renvoie pas la formule mais son résultat
On croit souvent que le format strict (1) affiche la formule contenue dans la cellule. Ce n'est pas son rôle : si A2 contient =100+50, =VALEUR.EN.TEXTE(A2; 1) renvoie 150, exactement comme le format concis. VALEUR.EN.TEXTE ne voit jamais que la valeur calculée.
Solution : Pour obtenir le texte d'une formule, utilise la fonction dédiée : =FORMULETEXTE(A2) renvoie =100+50. Le format strict de VALEUR.EN.TEXTE sert à autre chose : entourer le texte de guillemets pour le distinguer des nombres.
Dates converties en numéro de série Excel (45306 au lieu de 15/01/2024)
VALEUR.EN.TEXTE convertit la valeur brute sans tenir compte du formatage d'affichage de la cellule. Une date stockée comme 45306 en interne renvoie 45306, pas le format visible à l'écran.
Solution : Pour garder un format de date lisible, utilise TEXTE avec un code de format : =TEXTE(A2; "jj/mm/aaaa") renvoie 15/01/2024. Réserve VALEUR.EN.TEXTE aux cas où le numéro de série est acceptable pour le système de destination.
Erreur #NOM? : le nom de la fonction est mal orthographié
Le nom français comporte deux points : VALEUR.EN.TEXTE. Écrit VALEURTEXTE ou VALEUR.TEXTE, il ne correspond à aucune fonction et Excel retourne #NOM?. La même erreur survient si le classeur est ouvert sur une version d'Excel trop ancienne pour connaître la fonction.
Solution : Tape =VALEUR. et laisse l'autocomplétion insérer le nom complet. Si tes destinataires travaillent sur une version antérieure à Excel 365, prévois une alternative : TEXTE() pour les nombres avec formatage, ou la concaténation avec "" pour une conversion basique (=A2&"").
Perte du formatage numérique personnalisé
VALEUR.EN.TEXTE convertit la valeur brute, sans tenir compte du format d'affichage de la cellule. Si tu as formaté 1250,75 en 1 250,75 € dans Excel, VALEUR.EN.TEXTE renvoie 1250,75, pas le format affiché.
Solution : Utilise TEXTE avec le code de format approprié : =TEXTE(A2; "# ##0,00 €") renvoie 1 250,75 €. TEXTE est la bonne fonction quand le formatage de présentation compte ; VALEUR.EN.TEXTE est pour la conversion brute.

VALEUR.EN.TEXTE vs TEXTE vs CNUM vs T vs CTXT
Choisis VALEUR.EN.TEXTE quand tu jongles avec des types mélangés (nombres, booléens, dates, texte) et que tu veux tout aplatir en texte sans te poser de question. Dès que la présentation compte (une monnaie, une date au format jj/mm/aaaa, un nombre de décimales fixe), passe à TEXTE ou CTXT qui acceptent un code de format. CNUM fait l'inverse (texte vers nombre) et T ne garde que ce qui est déjà du texte.
| Critère | VALEUR.EN.TEXTE | TEXTE | CNUM | T | CTXT |
|---|---|---|---|---|---|
| Usage principal | Convertir n'importe quelle valeur en texte | Formater un nombre en texte | Convertir texte en nombre | Extraire uniquement le texte | Convertir un nombre en texte avec décimales |
| Formatage personnalisé | Non (conversion brute) | Oui (codes format) | N/A (conversion inverse) | Non | Oui (nb de décimales) |
| Types de données supportés | Tous (nombre, date, booléen, texte) | Nombres et dates uniquement | Texte vers nombre | Retourne "" si non-texte | Nombres uniquement |
| Compatibilité Excel | Excel 365 | Toutes versions | Toutes versions | Toutes versions | Toutes versions |
| Cas d'usage typique | Export données mixtes, typage | Affichage formaté (monnaie, date) | Corriger nombres en texte | Test de type texte | Nb de décimales fixe |

Astuces avancées avec VALEUR.EN.TEXTE
Combine avec CONCAT ou JOINDRE.TEXTE pour des chaînes complexes
VALEUR.EN.TEXTE est souvent utilisée en combinaison avec des fonctions de concaténation. Par exemple, =JOINDRE.TEXTE("-"; VRAI; VALEUR.EN.TEXTE(A2); VALEUR.EN.TEXTE(B2); VALEUR.EN.TEXTE(C2)) assemble plusieurs valeurs de types différents avec un délimiteur, en ignorant les cellules vides.
Ce combo est particulièrement puissant pour générer des identifiants ou des clés composites directement depuis des données hétérogènes.
Utilise le format strict pour auditer le typage d'une colonne
Tire =VALEUR.EN.TEXTE(A2; 1) vers le bas sur une colonne entière : tout ce qui ressort entre guillemets est du texte, tout ce qui ressort nu est un nombre ou un booléen. Dans une colonne censée ne contenir que des montants, chaque "1250,75" avec guillemets est un intrus à convertir.
C'est un diagnostic plus fiable que l'alignement dans la cellule, qu'un simple format personnalisé peut masquer.
Repère les formules avec FORMULETEXTE, pas avec VALEUR.EN.TEXTE
Pour documenter les formules d'une feuille, c'est FORMULETEXTE qu'il te faut : =FORMULETEXTE(A2) renvoie =100+50 là où VALEUR.EN.TEXTE ne renverrait que 150.
Les deux se complètent bien côte à côte : une colonne FORMULETEXTE pour la formule, une colonne VALEUR.EN.TEXTE pour le résultat qu'elle produit.
Questions fréquentes
TEXTE formate un nombre avec un code spécifique (comme "# ##0,00 €"), tandis que VALEUR.EN.TEXTE convertit n'importe quelle valeur (nombre, date, booléen, texte) en sa représentation textuelle brute sans formatage. TEXTE est idéal pour l'affichage, VALEUR.EN.TEXTE pour la conversion et l'export.
Non. Quel que soit le format choisi, VALEUR.EN.TEXTE ne voit que la valeur calculée : si A2 contient =100+50, elle renvoie 150 en format concis comme en format strict.
La fonction qui affiche le texte d'une formule est FORMULETEXTE : =FORMULETEXTE(A2) renvoie bien =100+50. Elle retourne #N/A si la cellule visée ne contient pas de formule.
À lever l'ambiguïté sur le type d'une valeur. Le format strict encapsule les chaînes de caractères entre guillemets, alors que les nombres, les booléens et les erreurs restent nus.
C'est ce qui te permet de distinguer un vrai nombre 42 d'un "42" stocké en texte, alors que le format concis affiche 42 dans les deux cas. Les guillemets présents à l'intérieur d'un texte sont doublés, comme dans la barre de formule.
Non, c'est une fonction récente : sur une version d'Excel trop ancienne pour la connaître, elle retourne #NOM?. Avant de partager un classeur qui l'utilise, vérifie la version de tes destinataires.
Pour les versions antérieures, remplace-la par TEXTE() quand tu convertis des nombres avec un formatage, ou par une concaténation avec "" (=A2&"") pour une conversion basique.
VALEUR.EN.TEXTE convertit une date en son numéro de série Excel (par exemple 45306 pour le 15/01/2024), ce qui n'est pas lisible. Pour obtenir un format de date lisible, utilise plutôt TEXTE(date; "jj/mm/aaaa") ou TEXTE(date; "jj mmmm aaaa") selon tes besoins.
Dans la grande majorité des cas, c'est une faute d'orthographe : le nom français comporte deux points, VALEUR.EN.TEXTE. Les variantes VALEURTEXTE ou VALEUR.TEXTE ne correspondent à aucune fonction Excel.
Si l'orthographe est bonne, c'est que ta version d'Excel ne connaît pas encore la fonction. En version anglaise, elle s'appelle VALUETOTEXT.
Pour aller plus loin
Continue sur ta lancée après la fonction VALEUR.EN.TEXTE : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



