Date.From : convertir une valeur en date dans Power Query
Du texte, un nombre, un datetime : tout se ramène à une date. À condition de préciser la culture, sans quoi le 3 avril devient le 4 mars.
Mis à jour le
Date.From convertit une valeur en date véritable, du type date. C’est l’étape qu’on oublie et qui fait échouer tout le reste : tant qu’une colonne de dates est encore du texte, elle se trie par ordre alphabétique, ne se relie pas à une table de dates, et fait échouer les fonctions temporelles.
Une valeur, et une culture quand il y a doute
Date.From(value as any, optional culture as nullable text) as nullable date
Les types acceptés sont le texte, le nombre, le datetime et le datetimezone. Une date reste elle-même, une valeur nulle rend null, et tout autre type provoque une erreur.
| Entrée | Ce qui se passe |
|---|---|
| Texte | Interprété selon la culture indiquée, ou celle du fichier si elle est omise. |
datetime | L’heure est coupée, seule la partie date est conservée. |
datetimezone | Conversion en heure locale, puis extraction de la date. |
| Nombre | Compté en jours à partir du 30 décembre 1899. |
Les trois conversions courantes
Date.From("2024-08-01") // #date(2024, 8, 1)
Date.From(#datetime(1899, 12, 30, 6, 45, 12)) // #date(1899, 12, 30)
Date.From(43910) // #date(2020, 3, 20)
Le troisième cas mérite une explication, parce qu’il produit souvent des dates fantaisistes. Un nombre est compté en jours depuis le 30 décembre 1899, la même origine qu’Excel. Le nombre 43910 tombe donc au 20 mars 2020, et 44131 au 27 octobre 2020. Si vous voyez apparaître des dates en 1900 ou en 2170, c’est en général qu’une colonne numérique a été convertie sans qu’on ait vérifié qu’elle contenait bien des numéros de série de dates.
03/04/2026 n’a pas le même sens des deux côtés de l’Atlantique
C’est l’incident le plus coûteux sur cette fonction, parce qu’il ne provoque aucune erreur. Sans culture précisée, Power Query interprète le texte avec les réglages du fichier, qui ne sont pas toujours ceux qu’on croit, surtout sur un classeur passé de main en main.
Date.From("03/04/2026", "fr-FR") // 3 avril 2026
Date.From("03/04/2026", "en-US") // 4 mars 2026
Sur un export où tous les jours sont supérieurs à 12, l’ambiguïté est levée d’elle-même et la conversion réussit. Elle échoue silencieusement sur la première ligne où le jour est inférieur ou égal à 12, c’est-à-dire à peu près partout. Résultat : des ventes de janvier comptées en octobre, sans un seul message.
Notre règle est sans exception : toute conversion de texte en date porte une culture explicite. Cinq caractères de plus, et le fichier devient reproductible sur n’importe quel poste.
Le paramètre sert aussi aux dates rédigées dans une autre langue, ce qui arrive dès qu’un export vient d’une filiale :
Table.TransformColumns(
Source,
{"Date comptable", each Date.From(_, "de-DE"), type date}
)
Ce qu’on nous demande sur Date.From
Pourquoi mes dates apparaissent-elles en 1900 ?
Parce qu’un nombre proche de zéro a été converti : l’origine étant le 30 décembre 1899, la valeur 1 donne le 31 décembre 1899 et la valeur 60 tombe fin février 1900. C’est le signe qu’on a converti une colonne de quantités ou d’identifiants au lieu d’une colonne de dates.
Pourquoi ma conversion Date.From échoue-t-elle sur certaines lignes ?
Presque toujours parce que la colonne mélange plusieurs formats ou contient des valeurs qui ne sont pas des dates : un tiret pour signifier vide, une mention en cours, un espace insécable. Isolez les lignes fautives avec try Date.From([Colonne]) otherwise null.
Quelle différence entre Date.From et Date.FromText ?
Date.FromText n’accepte que du texte, quand Date.From accepte aussi les nombres et les datetime. Sur une entrée textuelle, Date.From délègue d’ailleurs le travail à Date.FromText.
Comment convertir une colonne en date sans écrire de code ?
Clic droit sur l’en-tête de colonne, Modifier le type, À l’aide des paramètres régionaux. La boîte demande le type visé et la culture, et écrit le code pour vous.
Les fonctions qu’on utilise avec
Date.Year,Date.Month,Date.Day: décomposer une date une fois qu’elle est du bon type.- Créer un calendrier dynamique : la table de dates à laquelle relier la colonne convertie.
- La référence complète Power Query et DAX.
Sources — documentation officielle de l’éditeur, consultée le 22 août 2026 : Date.From, Date.FromText.
Des dates qui ne tombent pas dans le bon mois ?
Formats mélangés, cultures implicites, colonnes restées en texte : c’est l’un des premiers points que nous regardons en audit. Premier retour sous cinq jours ouvrés.