La fonction DATEADD permet de décaler une plage de dates vers l’avant ou l’arrière dans Power BI pour comparer des périodes temporelles et effectuer des analyses de tendance précises.

En finance d’entreprise, cette fonction est indispensable pour calculer des variations YoY (Year-over-Year), des écarts mensuels ou des performances trimestrielles sans recréer manuellement des colonnes de dates. Elle s’inscrit naturellement dans la modélisation de données temporelles, au cœur du suivi de projets et du reporting automatisé.

Syntaxe et paramètres de la fonction DAX, DATEADD

La syntaxe de DATEADD est simple mais rigoureuse : elle exige trois arguments essentiels pour fonctionner correctement.

Voici la structure exacte à respecter :

  • DATEADD(<dates>,<number_of_intervals>,<interval>)

Les paramètres sont définis comme suit :

  • dates : Colonne contenant des valeurs de date valides (ex : [Date] dans une table de calendrier)
  • number_of_intervals : Entier positif (ajout) ou négatif (soustraction) du nombre d’intervalles
  • interval : Type d’intervalle à appliquer : year, quarter, month, day

Attention : la fonction retourne toujours une table avec une seule colonne de dates décalées, pas une valeur scalaire.

Exemple concret en finance : calcul du chiffre d’affaires du jour précédent

Pour un analyste de données, comparer le CA actuel avec celui du jour précédent est un cas d’usage fréquent. Voici comment implémenter cela avec DATEADD :

CA_J-1 = CALCULATE([Total CA], DATEADD([Date], -1, day))

Ce calcul :

  • Prend la colonne [Date] du calendrier
  • Soustrait 1 jour (-1)
  • Applique le décalage sur l’intervalle day
  • Utilise CALCULATE pour réévaluer le contexte de filtre

Le résultat affiché dans un tableau Power BI montre le CA du jour J-1, aligné avec le jour J pour une comparaison visuelle immédiate.

Bonnes pratiques et erreurs fréquentes à éviter avec DATEADD en DAX

L’utilisation de DATEADD nécessite une rigueur particulière pour éviter des résultats incohérents dans vos rapports.

Les erreurs les plus courantes incluent :

  • Utiliser une colonne de date non valide (ex : texte formaté en date) : la fonction exige une colonne de type Date/Time
  • Oublier le signe négatif pour les décalages en arrière : -1 pour le jour précédent, -12 pour 12 mois
  • Confondre DATEADD avec SAMEPERIODLASTYEAR : DATEADD décale de nombre d’intervalles, SAMEPERIODLASTYEAR retourne la même période l’année précédente
  • Ne pas utiliser de table de calendrier dédiée : sans un calendrier structuré, les décalages peuvent être imprécis

Pour une analyse YoY rigoureuse, la fonction SAMEPERIODLASTYEAR est souvent plus adaptée que DATEADD, car elle garantit l’alignement exact des périodes annuelles.

Comparaison : DATEADD vs autres fonctions de décalage temporel

Le choix entre DATEADD et d’autres fonctions dépend de votre objectif métier précis en finance :

Fonction Usage principal Exemple concret
DATEADD Décalage flexible (jours, mois, années) CA du jour J-30 : DATEADD([Date], -30, day)
SAMEPERIODLASTYEAR Comparaison YoY exacte CA du même mois l’année précédente
PARALLELPERIOD Décalage par période (mois/année) CA du mois précédent : PARALLELPERIOD([Date], -1, MONTH)

En pratique, DATEADD est privilégié pour les décalages non annuels (jours, semaines) tandis que SAMEPERIODLASTYEAR reste la référence pour les comparaisons annuelles.

Cas d’usage métier : analyse de tendances et reporting

Dans un contexte de suivi, DATEADD s’applique à plusieurs scénarios critiques :

  • Calcul de la variation mensuelle : [CA] - CALCULATE([CA], DATEADD([Date], -1, month))
  • Analyse de la performance trimestrielle : DATEADD([Date], -3, month) pour comparer le Q1 au Q2
  • Projection budgétaire : décalage de 12 mois pour estimer le CA annuel futur
  • Comparaison de périodes personnalisées : décalage de 45 jours pour des cycles de vente longs

Ces calculs s’intègrent parfaitement dans des tableaux dynamiques Power BI, permettant aux équipes de suivre les écarts en temps réel.

Pour approfondir l’architecture technique de l’IA dans Power BI et ses limites, consultez ce guide sur la BI conversationnelle et IA Power BI, qui explique comment automatiser ces analyses avec des modèles prédictifs.

La documentation officielle de Microsoft détaillant toutes les fonctionnalités de DATEADD est accessible via leur centre d’apprentissage DAX.

Conclusion

La fonction DATEADD est un outil puissant pour décaler des dates et comparer des périodes en Power BI, avec une syntaxe précise et des cas d’usage métiers concrets en finance.

Appliquez immédiatement cette méthode dans votre modèle de données pour générer des rapports de variation plus dynamiques et automatisés.

FAQ

Quelle est la différence entre DATEADD et SAMEPERIODLASTYEAR ?

DATEADD décale de nombre d’intervalles (ex: -30 jours), tandis que SAMEPERIODLASTYEAR retourne la même période l’année précédente (ex: janvier 2024 vs janvier 2023).

DATEADD peut-il décaler sur des mois ?

Oui, en utilisant MONTH comme intervalle, mais cette option est uniquement disponible avec une référence de calendrier, pas avec une simple colonne de date.