Aller au contenu principal

Qu'est-ce que la fonction DATEVAL ?

Définition
La fonction DATEVAL convertit une chaîne de texte représentant une date en numéro de série Excel (nombre de jours depuis le 01/01/1900), ensuite affichable en format date et utilisable dans des calculs.

Tu t'en sers dès qu'un import CSV, une base de données ou un vieux logiciel te livre des dates en texte, ce texte qu'Excel refuse de trier ou de soustraire correctement. DATEVAL (DATEVALUE en anglais) transforme ces chaînes de caractères en vraies dates, celles que tu peux enfin filtrer, comparer et calculer.

Concrètement, c'est elle qui te permet de transformer des dates mal formatées issues d'un SIRH pour calculer l'ancienneté, d'harmoniser des plannings venant de trois outils différents (Jira, Monday, Asana) en une seule base, de détecter automatiquement les factures en retard depuis un export de facturation, ou de nettoyer un fichier e-commerce pour calculer des délais de livraison.

Syntaxe

=DATEVAL(texte_date)

Clique sur un argument pour aller à son explication.

DATEVAL utilise les paramètres régionaux de Windows. Un format valide aux États-Unis (03/15/2024 pour le 15 mars) peut être refusé en France qui attend jj/mm/aaaa. Pour les formats internationaux, réorganise les composants avec GAUCHE, DROITE et STXT avant d'appliquer DATEVAL.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction DATEVAL

1

texte_date

: la chaîne de texte contenant la date à convertir

Elle peut être une référence de cellule comme A2, ou une valeur directe entre guillemets comme "15/03/2024". Le format doit être reconnu par ton système selon tes paramètres régionaux.

Formats reconnus en France : "15/03/2024" (jj/mm/aaaa avec slashes), "15-03-2024" (avec tirets), "15 mars 2024" (texte long), "15 mars 24" (année à 2 chiffres), "2024-03-15" (format ISO 8601, universel).

Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment convertir un texte en date avec la fonction DATEVAL

L'export de ton logiciel de commandes vient d'atterrir dans Excel, et le tri par date ne donne rien : les dates restent collées à gauche de leur cellule, le signe qu'Excel les prend pour du texte et non pour des dates. Tu as la liste des commandes avec leur date, leur client et leur statut, et tu veux des dates que tu peux trier, filtrer et soustraire. La fonction DATEVAL relit chaque chaîne de caractères et la transforme en vraie date Excel.

Les étapes
  1. 1
    Dans une cellule, écris =DATEVAL(.
  2. 2
    En 1er argument : clique sur la cellule qui contient la date saisie en texte, B2. Elle affiche « 15/03/2024 » tout en restant collée à gauche, le signe qu'Excel n'y voit qu'une suite de caractères. Pointer la cellule plutôt que retaper la date entre guillemets te permet de recopier la même formule sur toute la colonne.
  3. 3
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas jusqu'à la dernière commande. Les quatre lignes suivantes convertissent chacune leur propre date, et la colonne Date valide devient une colonne de vraies dates.
Au final, ta formule devrait ressembler à ça :=DATEVAL(B2)
Explication
La fonction DATEVAL relit le contenu texte de B2 et renvoie le numéro de série correspondant, c'est-à-dire le nombre de jours écoulés depuis le 01/01/1900 (ici 45366). La colonne Date valide étant au format Date, ce nombre s'affiche « 15/03/2024 », et Excel sait enfin la trier et la calculer.
Exemple 2

Comment convertir une date au format inhabituel avec les fonctions DATEVAL et SUBSTITUE

Le vieil outil de reporting maison écrit ses dates sous la forme « 15_03_2024 », et le récapitulatif trimestriel est attendu demain matin. Tes rapports sont listés avec leur date d'export, mais aucun tri chronologique ne fonctionne, parce que le tiret bas n'est un séparateur de date sur aucun système. En remettant une barre oblique à la place du tiret bas avec la fonction SUBSTITUE, tu rends à la fonction DATEVAL un format qu'elle sait convertir.

Les étapes
  1. 1
    Dans une cellule, écris =DATEVAL(.
  2. 2
    En 1er argument : écris la date remise en forme et referme-la, SUBSTITUE(B2; "_"; "/"). La fonction SUBSTITUE lit la date exportée dans B2 et remplace chacun de ses tirets bas par une barre oblique, si bien que « 15_03_2024 » devient « 15/03/2024 ». La fonction DATEVAL ne voit donc jamais le tiret bas, qui n'est un séparateur de date sur aucun système.
  3. 3
    Ferme la parenthèse de la fonction DATEVAL et appuie sur Entrée, puis recopie la formule vers le bas. Celle de la fonction SUBSTITUE a déjà été refermée à l'étape précédente, et chaque rapport reçoit ainsi sa date d'export convertie.
Voici la formule que tu obtiens à la fin :=DATEVAL(SUBSTITUE(B2; "_"; "/"))
Explication
La fonction SUBSTITUE remplace d'abord chaque tiret bas par une barre oblique, ce qui reconstruit le texte « 15/03/2024 ». La fonction DATEVAL reçoit alors un format qu'elle reconnaît et le convertit en vraie date, sans que tu aies retouché une seule ligne de la colonne d'origine.
Exemple 3

Comment éviter l'erreur #VALEUR! avec les fonctions DATEVAL et SIERREUR

Le fichier d'échéances qui sort de l'ancien logiciel de facturation n'est jamais tout à fait propre : quelques lignes portent une mention libre du genre « À confirmer », d'autres sont carrément vides. Tu as besoin de vraies dates pour lancer les relances de la semaine, mais une seule cellule fautive suffit à couvrir ta colonne d'erreurs #VALEUR!. La fonction SIERREUR entoure la fonction DATEVAL et remplace ces accidents par un message clair.

Les étapes
  1. 1
    Dans une cellule, écris =SIERREUR(.
  2. 2
    En 1er argument : écris la conversion à surveiller et referme-la, DATEVAL(B2). Sur une échéance lisible comme « 15/02/2024 », la fonction DATEVAL renvoie la date attendue. Sur la mention « À confirmer » ou sur une cellule vide, elle renvoie #VALEUR!, et c'est cette erreur que la fonction SIERREUR guette.
  3. 3
    En 2ᵉ argument : saisis le texte qui remplacera l'erreur, "Date invalide". Les guillemets sont obligatoires pour qu'Excel traite ces deux mots comme du texte à afficher.
  4. 4
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas. La colonne Échéance valide affiche « Date invalide » sur les deux lignes que la conversion n'a pas pu traiter, ce qui te laisse repérer d'un coup d'œil celles à reprendre à la main.
Une fois les morceaux assemblés, ta formule donne ça :=SIERREUR(DATEVAL(B2); "Date invalide")
Explication
La fonction DATEVAL convertit les échéances lisibles et renvoie #VALEUR! sur les autres, ici la mention « À confirmer » et la cellule vide. La fonction SIERREUR intercepte ces erreurs et affiche « Date invalide » à leur place, ce qui isole les lignes à reprendre au lieu de laisser l'erreur contaminer tes calculs.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction DATEVAL

Erreur #VALEUR! : format de date non reconnu

Le texte n'est pas dans un format de date valide selon tes paramètres régionaux Windows. "03/15/2024" (format américain mm/jj/aaaa) renvoie #VALEUR! sur un système configuré en français qui attend jj/mm/aaaa. Les formats exotiques comme "2024_03_15" ne sont pas non plus reconnus.

Solution : Utilise les fonctions texte pour réorganiser les composants dans l'ordre attendu, ou SUBSTITUE pour remplacer les séparateurs. Pour un format US, reconstruit la date : =DATE(DROITE(A2;4); GAUCHE(A2;2); STXT(A2;4;2)). Pour les séparateurs exotiques : =DATEVAL(SUBSTITUE(A2;"_";"/")).

Les dates s'affichent en nombre (ex : 45366 au lieu de 15/03/2024)

DATEVAL renvoie un numéro de série, qui est le nombre de jours depuis le 01/01/1900. C'est correct, mais le format d'affichage de la cellule est resté sur "Nombre" au lieu de "Date".

Solution : Sélectionne les cellules, fais Ctrl+1, choisis "Date" dans la catégorie et sélectionne le format "jj/mm/aaaa". Le contenu reste identique, seul l'affichage change.

DATEVAL ignore la partie heure dans les horodatages

Si ton texte contient une heure ("15/03/2024 14:30"), DATEVAL extrait uniquement la date et ignore totalement la partie 14:30. Tu perds l'information temporelle.

Solution : Utilise TEMPSVAL en complément : =DATEVAL(A2)+TEMPSVAL(A2) convertit à la fois la date et l'heure en une valeur datetime complète. Formate ensuite la cellule en "jj/mm/aaaa hh:mm" pour afficher les deux.

Erreur #VALEUR! sur des cellules déjà au format date

Si tu appliques DATEVAL à une cellule contenant déjà une vraie date Excel (un numéro de série, pas du texte), DATEVAL renvoie #VALEUR! car elle attend exclusivement du texte en entrée.

Solution : Vérifie d'abord si tes données sont du texte ou des dates : texte = aligné à gauche par défaut, date = alignée à droite. Utilise =ESTTEXTE(A2) pour tester programmatiquement. Si la cellule contient déjà une vraie date, DATEVAL est inutile.

Cellules vides ou texte non-date qui cassent les formules en cascade

Si ta colonne contient des cellules vides, des "N/A" ou du texte sans rapport avec une date, DATEVAL renvoie #VALEUR! sur chaque ligne, et ces erreurs se propagent à toutes les formules qui dépendent de cette colonne.

Solution : Encapsule dans SIERREUR et ESTVIDE : =SI(ESTVIDE(A2);"";SIERREUR(DATEVAL(A2);"Invalide")). Filtre ensuite sur "Invalide" pour corriger manuellement les quelques cas problématiques.

Tu cherches surtout à corriger l'erreur #VALEUR! affichée dans ta cellule, sans passer par la fonction DATEVAL ? Consulte la fiche dédiée à l'erreur #VALEUR! pour comprendre toutes ses causes et comment la corriger.

L’erreur fatale
DATEVAL suit les paramètres régionaux de Windows : « 03/15/2024 » (format américain) déclenche #VALEUR! sur un Excel français qui attend jj/mm/aaaa. Reconstruis alors la date avec DATE, GAUCHE, DROITE et STXT.
Lucas, la mascotte du Dojo, compare deux fonctions Excel

DATEVAL vs DATE vs TEMPSVAL vs TEXTE

Ces quatre fonctions traitent toutes des dates, mais dans des directions opposées. Choisis selon que tu veux convertir du texte en date, construire une date depuis ses composants, ou formater une date pour l'affichage.

CritèreDATEVALDATETEMPSVALTEXTE
Direction de conversionTexte vers dateNombres vers dateTexte vers heureDate vers texte
Type d'entréeChaîne texte3 nombres séparés (an, mois, jour)Chaîne texteDate Excel (numéro de série)
Type de sortieNuméro de sérieNuméro de sérieFraction de jourTexte formaté
Cas d'usage typiqueNettoyage import CSV/BDDConstruction de date depuis cellules séparéesConvertir heures texteFormatage pour export ou affichage
Nombre de paramètres1 (texte)3 (an, mois, jour)1 (texte)2 (valeur, format)
Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec DATEVAL

1Astuce

Traiter les formats exotiques avec SUBSTITUE

Si tes dates utilisent un séparateur non standard ("2024_03_15" ou "2024.03.15"), remplace d'abord le séparateur avant d'appliquer DATEVAL : =DATEVAL(SUBSTITUE(A2;"_";"/")). Cette technique fonctionne aussi pour nettoyer des espaces en trop ou des caractères parasites.
Pour les dates US (mm/jj/aaaa) sur un système français, la reconstruction manuelle est plus fiable : =DATE(DROITE(A2;4); GAUCHE(A2;2); STXT(A2;4;2)).

2Astuce

Protéger une conversion en masse avec SIERREUR

Quand tu nettoies des milliers de lignes importées, certaines dates peuvent être mal formées ou contenir des valeurs nulles. Encapsule DATEVAL dans SIERREUR : =SIERREUR(DATEVAL(A2);"Format invalide"). Tu peux ensuite filtrer sur "Format invalide" pour corriger les cas problématiques.
Ajoute une mise en forme conditionnelle =ESTERREUR(C2) en rouge sur la colonne résultat pour repérer instantanément les lignes à corriger dans un fichier de 10 000 lignes.

Le combo gagnant
DATEVAL se marie avec TEMPSVAL quand ton texte porte aussi une heure : seule, DATEVAL garde la date et jette le 14:30. DATEVAL(A2) + TEMPSVAL(A2) reconstitue la date et l'heure complètes.
FAQ

Questions fréquentes

DATEVAL reconnaît les formats basés sur tes paramètres régionaux Windows. En France, elle comprend "15/03/2024", "15-03-2024" ou "15 mars 2024", mais risque de rejeter le format américain "03/15/2024". Pour les formats non reconnus, réorganise les composants avec GAUCHE, DROITE et STXT avant d'appliquer DATEVAL, ou utilise SUBSTITUE pour remplacer les séparateurs exotiques.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction DATEVAL : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir