Votre site référence pour maîtriser Power BI proposé Morpheus Formation,
Comprendre la fonction DATEDIFF() dans Power BI
Vous cherchez à maîtriser les dates dans Power BI ? La fonction DATEDIFF() est un outil essentiel pour comparer des dates. Que vous soyez analyste ou novice, cette fonction vous aide à mesurer facilement le temps entre deux événements.
Dans cet article, nous allons explorer en détail comment utiliser DATEDIFF(). Nous verrons sa syntaxe, des exemples pratiques et des cas d’utilisation courants. Prêt à plonger dans le monde des dates ? C’est parti !
| Si vous voulez… | Utilisez DATEDIFF() pour… |
|---|---|
| Calculer le nombre de jours entre deux dates | connaître un délai ou une durée |
| Calculer le nombre de mois entre deux dates | mesurer une ancienneté |
| Calculer le nombre d’années entre deux dates | calculer un âge ou une période |
| Comparer deux dates dans Power BI | obtenir un résultat simple et rapide |
Qu’est-ce que la fonction DATEDIFF() ?
La fonction DATEDIFF() dans Power BI est utilisée pour calculer la différence entre deux dates. Elle renvoie un nombre qui représente le nombre d’unités de temps entre ces dates. Cela peut être des jours, des mois ou des années, selon ce que vous choisissez.
Voici la syntaxe de la fonction :
DATEDIFF(, , )

Dans cette syntaxe :
- start_date : La date de début.
- end_date : La date de fin.
- interval : L’unité de mesure pour la différence (par exemple, DAY, MONTH, YEAR).
Cette fonction est très utile pour divers rapports et analyses. Par exemple, vous pouvez l’utiliser pour :
- Calculer l’âge d’un client.
- Mesurer le temps écoulé entre deux événements.
- Analyser les tendances sur une période donnée.
En résumé, DATEDIFF() est un outil puissant pour manipuler les dates dans Power BI. Elle permet d’obtenir rapidement des informations précieuses sur la temporalité des données.
Syntaxe de DATEDIFF()
Structure de la fonction
La fonction DATEDIFF() est utilisée pour calculer la différence entre deux dates. Sa structure est simple :
DATEDIFF(, , )
Voici un aperçu des éléments :
- date1 : La première date à comparer.
- date2 : La seconde date à comparer.
- unité : L’unité de mesure de la différence (jours, mois, années, etc.).
Arguments nécessaires
Pour utiliser DATEDIFF(), trois arguments sont requis :
- date1 : Cela peut être une colonne de date ou une expression qui retourne une date.
- date2 : De même, cela doit être une date valide.
- unité : Choisissez parmi les options suivantes :
- SECOND
- MINUTE
- HOUR
- DAY
- MONTH
- QUARTER
- YEAR
Chaque argument doit être soigneusement choisi pour obtenir des résultats précis.
Besoin de se former pour maîtriser enfin le langage DAX et la langage M sur Power BI ? Avec Morpheus Formation vous pouvez passer une formation Power BI certifiante.
Comment utiliser DATEDIFF() dans Power BI
Exemples pratiques d’utilisation
La fonction DATEDIFF() est très utile pour comparer des dates. Elle prend trois arguments : la date de début, la date de fin, et l’unité de temps (jours, mois, années, etc.). Voici quelques exemples :
- Calculer la différence en jours :
DATEDIFF(DateDébut, DateFin, DAY) - Calculer la différence en mois :
DATEDIFF(DateDébut, DateFin, MONTH) - Calculer la différence en années :
DATEDIFF(DateDébut, DateFin, YEAR)
Ces exemples permettent d’obtenir la différence entre deux dates selon l’unité choisie. Par exemple, si vous souhaitez connaître le nombre de jours entre deux ventes, utilisez DATEDIFF(DateVente1, DateVente2, DAY).
Cas d’utilisation courants
Voici quelques cas d’utilisation courants de la fonction DATEDIFF() dans Power BI :
- Analyse des ventes : Suivre le temps écoulé entre les ventes pour optimiser les promotions.
- Gestion des projets : Calculer la durée entre le début et la fin d’un projet.
- Suivi des clients : Mesurer le temps entre deux achats pour améliorer la fidélisation.
Ces cas montrent comment DATEDIFF() peut aider à prendre des décisions éclairées. En utilisant cette fonction, vous pouvez mieux comprendre les comportements et les tendances dans vos données.
Comment calculer la différence entre FIRSTDATE() et LASTDATE() en DAX ?
Dans Power BI, il est fréquent de vouloir mesurer la période couverte par un ensemble de données. Pour cela, DAX permet de combiner DATEDIFF(), FIRSTDATE() et LASTDATE().
Exemple : calculer le nombre de jours entre la première et la dernière date de vente.
Période Analyse =
DATEDIFF(
FIRSTDATE(Sales[OrderDate]),
LASTDATE(Sales[OrderDate]),
DAY
)
Dans cette formule :
- FIRSTDATE() retourne la première date visible dans le contexte de filtre
- LASTDATE() retourne la dernière date visible
- DATEDIFF() calcule la différence entre ces deux dates
Ce calcul est particulièrement utile pour :
- mesurer la durée d’activité d’un client
- analyser une période de ventes
- suivre une fenêtre temporelle dans un rapport filtré
Attention : le résultat dépend du contexte de filtre actif dans Power BI.
Limitations et considérations de DATEDIFF()
Erreurs courantes
Lorsque vous utilisez la fonction DATEDIFF() dans Power BI, certaines erreurs courantes peuvent survenir. Voici quelques-unes des plus fréquentes :
- Types de données incorrects : Assurez-vous que les colonnes utilisées sont bien de type date.
- Ordre des arguments : L’ordre des dates est crucial. La date de début doit toujours être avant la date de fin.
- Unité de mesure : Vérifiez que l’unité choisie (jours, mois, années) correspond bien à votre besoin.
Pourquoi DATEDIFF() peut donner un résultat surprenant ?
La fonction DATEDIFF() ne calcule pas toujours une durée exacte.
Elle compte le nombre d’intervalles franchis entre deux dates.
Exemple :
DATEDIFF(
DATE(2025,1,31),
DATE(2025,2,1),
MONTH
)
Résultat : 1
Même si un seul jour s’est écoulé.
Pourquoi ? Parce que DAX détecte qu’un nouveau mois a été franchi.
Ce comportement est particulièrement important avec :
- MONTH
- QUARTER
- YEAR
Il faut donc bien comprendre cette logique pour éviter d’interpréter un résultat comme une durée “réelle”, alors qu’il s’agit d’un comptage d’intervalles.
| Partie | Où ? | Pourquoi ? |
|---|---|---|
| DATEDIFF vs soustraction | Après « Comparaison avec d’autres fonctions de date » | Répond à une vraie question DAX |
| Résultats négatifs | Dans « Limitations » | Rend l’explication concrète |
| FIRSTDATE / LASTDATE | Nouveau H2 après cas d’usage | Très aligné SERP |
| Intervalles franchis | Dans « Limitations » | Très forte valeur pédagogique |
Que se passe-t-il si la date de début est après la date de fin ?
Si la date de début (start_date) est plus récente que la date de fin (end_date), DATEDIFF() retourne une valeur négative.
Exemple :
DATEDIFF(
DATE(2026,5,10),
DATE(2026,5,1),
DAY
)
Résultat : -9
Ce comportement peut être utile pour détecter des anomalies ou mesurer un écart inversé.
Il est donc important de vérifier l’ordre des dates selon votre logique métier.
Meilleures pratiques
Pour éviter les erreurs et optimiser l’utilisation de DATEDIFF(), voici quelques meilleures pratiques à suivre :
- Testez vos formules : Utilisez des jeux de données réduits pour valider vos calculs.
- Documentez vos mesures : Notez les raisons et l’objectif de chaque utilisation de DATEDIFF().
- Utilisez des variables : Simplifiez vos formules en définissant des variables pour les dates.
En respectant ces conseils, vous maximiserez l’efficacité de la fonction DATEDIFF() et minimiserez les risques d’erreurs.
DATEDIFF() ou soustraction de dates : quelle méthode choisir en DAX ?
En DAX, il existe deux façons courantes de calculer une différence entre deux dates : utiliser DATEDIFF() ou soustraire directement deux dates.
La différence principale est que DATEDIFF() permet de choisir explicitement une unité de temps, alors que la soustraction retourne généralement une durée brute en jours.
Par exemple, avec une soustraction directe :
Sales[DeliveryDate] - Sales[OrderDate]
Le résultat correspond à une différence simple entre les deux dates.
Avec DATEDIFF(), vous pouvez préciser l’unité souhaitée :
DATEDIFF(
Sales[OrderDate],
Sales[DeliveryDate],
DAY
)
Utilisez DATEDIFF() lorsque vous avez besoin d’un calcul lisible ou d’une unité précise comme MONTH, YEAR ou HOUR.
La soustraction reste utile pour des calculs simples en jours.
Questions fréquentes sur DATEDIFF()
La fonction DATEDIFF() de Power BI suscite souvent des questions. Voici quelques interrogations courantes que les utilisateurs se posent.
Quelle est la syntaxe de DATEDIFF() ?
La syntaxe de la fonction DATEDIFF() est simple :
DATEDIFF(, , )
Où :
- date1 : La première date.
- date2 : La seconde date.
- intervalle : L’unité de temps (jour, mois, année, etc.).
Quels types d’intervalles peut-on utiliser ?
Les intervalles acceptés par DATEDIFF() incluent :
- DAY : pour les jours.
- MONTH : pour les mois.
- YEAR : pour les années.
Comment DATEDIFF() gère-t-il les dates égales ?
Si date1 et date2 sont identiques, le résultat de DATEDIFF() sera toujours 0. Cela signifie qu’il n’y a pas de différence entre les deux dates.
Peut-on utiliser DATEDIFF() avec des dates nulles ?
Si l’une des dates est null, la fonction renverra également null. Il est donc important de vérifier vos données avant d’appliquer cette fonction.
Aller plus loin sur Power BI
Vous avez envie d’aller plus loin ? Découvrez notre formation Power BI, à Metz à côté de notre siège social, et même chez vous !
Nous proposons des formations à distance mais aussi en présentiel.
Pour suivre une formation dans le Grand Est, à Metz et ses alentours, c’est juste ici 👉
Mais si vous préférez les formations à distance :




