En bref — Excel stocke chaque date comme un numéro de série (des jours comptés depuis le 1er janvier 1900) ; la date que vous voyez est ce numéro habillé d'un format de date. Quand une date arrive en texte, ce n'est pas un numéro de série — donc elle refuse de se trier chronologiquement, de se soustraire ou de nourrir les fonctions de date.
DATEVALUEanalyse une date-texte en son numéro de série :=DATEVALUE("2025-01-01")→45658(mettez la cellule au format date pour le voir).TIMEVALUEfait de même pour une heure, en renvoyant une fraction de jour :=TIMEVALUE("2:30 PM")→0,6041…. Le seul piège à respecter : pour les chaînes ambiguës comme"03/04/2026",DATEVALUEsuit vos paramètres régionaux, donc il peut lire le 4 mars ou le 3 avril.
Remarque — Dans l'interface française d'Excel, ces fonctions portent d'autres noms : DATEVALUE → DATEVAL, TIMEVALUE → TEMPSVAL, DATE → DATE, TEXT → TEXTE, VALUE → CNUM, LEFT → GAUCHE, MID → STXT, RIGHT → DROITE. L'erreur
#VALUE!s'affiche#VALEUR!en français. Les formules ci-dessous conservent les noms anglais pour rester copiables tels quels.
=DATEVALUE("2025-01-01") ' -> 45658 (série ; format date pour voir 2025-01-01)
=TIMEVALUE("2:30 PM") ' -> 0,604167 (fraction de jour)
=DATEVALUE("2-Jul-2026") + TIMEVALUE("14:30") ' un vrai numéro de série date-heure
La situation est toujours la même : vous recevez une colonne de dates depuis un
export, elles s'alignent à gauche des cellules, et rien de ce qui devrait
marcher sur des dates ne marche — elles trient "1/12" avant "2/03"
alphabétiquement, =B2-A2 renvoie #VALUE!, et DATEDIF refuse. Elles
ressemblent à des dates mais ce sont des textes. DATEVALUE et TIMEVALUE
retransforment les imposteurs en vrais numéros de série. Ce guide couvre le modèle
mental, le piège régional qui attrape tout le monde, et les cas où un autre outil
est la seule chose capable d'analyser la chaîne.
Ce que vous allez apprendre
- Le modèle mental : une date est un numéro de série ; une date-texte est un imposteur
- Comment reconnaître les dates-texte (et pourquoi elles cassent le tri et le calcul)
DATEVALUEet le piège de l'ambiguïté régionale avec03/04/2026TIMEVALUE, les fractions de jour, et combiner date + heure- Quand
DATEVALUEne peut pas analyser une chaîne — et quoi utiliser à la place - Le choix de bon sens :
DATEVALUEvsDATE(GAUCHE,STXT,DROITE)vs Convertir
Le modèle mental : une date est un nombre en costume
Tapez 2025-01-01 dans une cellule et Excel stocke 45658 — le nombre de jours
depuis son époque — puis l'habille d'un format de date. C'est pourquoi
l'arithmétique des dates fonctionne : fin - début n'est que la soustraction de
deux comptes de jours, et EOMONTH, NETWORKDAYS et DATEDIF opèrent tous sur le
numéro de série sous-jacent.
Une date texte contourne tout cela. "2025-01-01" stockée en texte est la
suite de caractères 2 0 2 5 - 0 1 - 0 1 — il n'y a pas de 45658 en dessous,
donc aucun des mécanismes ne s'enclenche :
' A2 contient le TEXTE "2025-01-01"
=A2 + 1 ' -> #VALUE! (on ne peut pas ajouter 1 à une chaîne)
=DATEVALUE(A2) ' -> 45658 (maintenant un vrai numéro de série ; =+1 donne le lendemain)
Gardez l'image : DATEVALUE ne change pas l'apparence de la date — il donne au
sosie un vrai nombre en dessous. Ensuite, appliquez un format de date pour que le
45658 s'affiche de nouveau 2025-01-01.
Comment repérer une date-texte
Les mêmes signes que pour les nombres-textes, plus quelques-uns propres aux dates :
- Les valeurs sont alignées à gauche (les vraies dates s'alignent à droite).
- Le tri est alphabétique, pas chronologique —
"03/…"se place avant"11/…"quelle que soit l'année. =date_ultérieure - date_antérieurerenvoie#VALUE!au lieu d'un compte de jours.DATEDIF,EOMONTH,NETWORKDAYSet les filtres de date soit renvoient une erreur, soit traitent chaque chaîne comme une étiquette sans rapport.
Si le calcul de dates se comporte mal, supposez des dates-texte jusqu'à preuve du contraire.
DATEVAL et le piège de l'ambiguïté régionale
DATEVALUE lit toute chaîne qu'Excel reconnaît comme une date dans les
paramètres régionaux actuels. Cette dernière clause est tout le piège. Considérez
"03/04/2026" :
=DATEVALUE("03/04/2026") ' paramètres US -> 4 mars 2026
=DATEVALUE("03/04/2026") ' paramètres UK -> 3 avril 2026
Même chaîne, jour différent, et aucune erreur pour vous avertir — le classeur signifie simplement quelque chose de différent en silence sur une autre machine. Deux défenses :
- Privilégiez une entrée non ambiguë : l'ISO
"2026-07-02"et les mois écrits en toutes lettres"2-Jul-2026"s'analysent partout de la même façon. - Quand vous maîtrisez l'analyse, ne vous fiez pas à la devinette de
DATEVALUE— décomposez la chaîne avecDATE(year, month, day)pour que vous décidiez quelle pièce est le mois (voir ci-dessous).
DATEVALUE ignore aussi toute portion horaire dans la chaîne (utilisez TIMEVALUE
pour ça), et renvoie #VALUE! pour un texte qu'il ne parvient pas à lire comme une
date.
TEMPSVAL et les fractions de jour
Excel stocke une heure comme la fraction d'une journée de 24 heures : minuit
vaut 0, midi 0,5, 18 h 0,75. TIMEVALUE analyse une heure-texte en cette
fraction :
=TIMEVALUE("2:30 PM") ' -> 0,604167 (14,5 / 24)
=TIMEVALUE("23:15") ' -> 0,968750
Parce qu'une vraie date-heure est série + fraction, vous en reconstruisez une en additionnant les deux analyseurs :
' A2 contient le texte "2026-07-02 14:30"
=DATEVALUE(LEFT(A2, 10)) + TIMEVALUE(MID(A2, 12, 5)) ' -> un vrai numéro de série date-heure
Mettez le résultat au format yyyy-mm-dd hh:mm et vous avez une valeur que vous
pouvez soustraire, trier et comparer comme n'importe quel autre horodatage.
Quand DATEVAL n'y arrive pas
DATEVALUE n'analyse que les formats qu'Excel reconnaît déjà comme des dates. Il
échoue sur des chaînes vraiment non standard — "20260702" (sans séparateurs),
"July2026" (sans jour), "Q3 2026" — et il renvoie inutilement une erreur si la
valeur est déjà une vraie date (c'est un nombre, pas du texte, donc il n'y a
rien à analyser). Pour celles-là, recourez plutôt à l'analyse structurelle :
' "20260702" -> extraire les morceaux par position et reconstruire la date
=DATE(LEFT(A2,4), MID(A2,5,2), RIGHT(A2,2)) ' -> 2026-07-02, sans ambiguïté
DATE(year, month, day) prend trois nombres et construit un numéro de série
sans la moindre devinette sur quelle partie est le mois — et c'est exactement
pourquoi il bat DATEVALUE chaque fois que le format est fixe mais bizarre. Voir
LEFT / RIGHT / MID pour le versant extraction.
Le choix de bon sens
- Date-texte standard et non ambiguë (ISO ou mois en toutes lettres) →
DATEVALUEest net et vivant. Bon pour une formule qui doit réanalyser un texte changeant. - Ambiguïté
jj/mmvsmm/jj→ ne faites pas confiance à la devinette régionale deDATEVALUE; décomposez avecDATE(LEFT,MID,RIGHT)pour maîtriser l'ordre. - Une colonne ponctuelle à nettoyer → Données → Convertir → Terminer, en choisissant le format de colonne Date (JMA/MJA), convertit sur place sans formule.
- Imports récurrents → corrigez le type à la source ou dans Power Query ;
n'expédiez pas une colonne
DATEVALUEque vous reconstruisez chaque semaine.
Une fois vos dates devenues de vrais numéros de série, toute la boîte à outils des
dates s'ouvre — comptes de jours, EOMONTH pour les fins de mois, NETWORKDAYS
pour les jours ouvrés, DATEDIF pour les âges et les ancienneté. DATEVALUE est
simplement le tourniquet qui fait entrer les dates-texte dans ce monde.
Comment ExcelMaster vous aide
Les dates-texte sont singulièrement retorses parce qu'elles paraissent correctes
— le bogue se cache jusqu'à ce qu'un total ou un tri déraille en silence.
ExcelMaster reconnaît le motif (des dates qui refusent de se soustraire, des
tris qui ressortent alphabétiques), et — surtout — gère l'ambiguïté à votre place :
il lit à partir des données elles-mêmes si une colonne est en jj/mm ou mm/jj,
puis convertit avec la bonne analyse, DATEVALUE pour les chaînes standard ou une
décomposition DATE(...) pour les bizarres. Vous obtenez de vrais numéros de série
sur lesquels faire des calculs, sans parier votre clôture trimestrielle sur la
convention de date de quel pays Excel a supposée.
Foire aux questions
Comment convertir du texte en date dans Excel ?
=DATEVALUE(A1), puis mettez la cellule au format date. Pour toute une colonne sans
formule, utilisez Données → Convertir → Terminer et choisissez le format Date.
Pour les chaînes non standard, reconstruisez avec =DATE(LEFT,MID,RIGHT).
Pourquoi DATEVALUE renvoie-t-il #VALUE! ?
La chaîne n'est pas un format qu'Excel reconnaît comme une date dans votre région —
par exemple "20260702" sans séparateurs, un jour manquant, ou la valeur est
déjà une vraie date (un nombre, donc il n'y a rien à convertir). Utilisez la
décomposition DATE(...) pour les formats bizarres.
Pourquoi mes dates se trient-elles mal ?
Ce sont des textes, pas de vraies dates, donc elles se trient alphabétiquement
("03/…" avant "11/…"). Convertissez-les avec DATEVALUE ou Convertir pour
qu'Excel trie par le numéro de série sous-jacent.
Que renvoie TIMEVALUE ?
Une fraction de jour : =TIMEVALUE("2:30 PM") → 0,6042 (14,5 ÷ 24).
Ajoutez-la à un résultat DATEVALUE pour construire un numéro de série date-heure
complet.
DATEVALUE ou DATE — lequel utiliser ?
DATEVALUE analyse une chaîne de texte et devine le format à partir de vos
paramètres régionaux. DATE(year, month, day) construit une date à partir de
trois nombres sans ambiguïté. Utilisez DATE(...) (avec
LEFT/MID/RIGHT) chaque fois que l'ordre du texte est fixe mais inhabituel, ou
quand jj/mm vs mm/jj pourrait être mal lu.
Testé dans
Testé dans : Excel 365 (Windows 11) — dernière vérification le 2026-07-02.
Guides associés : Excel TEXT · Excel VALUE et NUMBERVALUE · Excel LEFT, RIGHT et MID · Excel FIND et SEARCH · Excel SUMIFS
