3.2 · Time intelligence (cumuls, YTD, comparaison N-1)

Niveau 3 · Avancé : DAX & interactivité

3.2Time intelligence (cumuls, YTD, comparaison N-1)

Objectif : calculer cumuls annuels (TOTALYTD), évolutions et comparaisons par rapport à la période précédente (SAMEPERIODLASTYEAR).
Temps estimé : 22 min

« Où en est-on par rapport à l'an dernier ? » — la question n°1 de toute direction. La time intelligence DAX y répond en trois fonctions phares : TOTALYTD (le cumul depuis le début d'année), SAMEPERIODLASTYEAR (la même période N-1) et DATEADD (le décalage générique). Prérequis absolu : la table de dates marquée du 2.5 — sans elle, ces fonctions mentent.

Vous construirez le quatuor standard de tout rapport de pilotage : CA YTD, CA N-1, évolution en valeur et en % — puis le poserez dans une matrice temporelle qui répond à la question de la direction en un regard.

Vocabulaire de la section

Time intelligence
La famille de fonctions DAX qui manipulent les périodes : cumuls, décalages, comparaisons — toutes appuyées sur la table de dates.
TOTALYTD
Le cumul annuel : TOTALYTD([Total CA]; Dates[Date]) — variante fiscale possible avec la date de clôture.
SAMEPERIODLASTYEAR
La même période un an plus tôt : CALCULATE([Total CA]; SAMEPERIODLASTYEAR(Dates[Date])).
DATEADD
Le décalage générique : DATEADD(Dates[Date]; -1; MONTH) pour le mois précédent — plus flexible que les fonctions dédiées.
Évolution N-1
Le duo final : Évol = [CA] - [CA N-1] et Évol % = DIVIDE([CA] - [CA N-1]; [CA N-1]).
Vérifiez votre compréhension

Comment calcule-t-on un « % du total » insensible au filtre d'une colonne ?

Time intelligence (cumuls, YTD, comparaison N-1)
Vidéo hébergée sur YouTube — ouvrir dans un nouvel onglet ↗
Tutos « 3.2 » Power BI time intelligence YTD cumul N-1 comparaison (recherche)
Cliquer pour voir les résultats à jour ↗

En pratique — Le quatuor de pilotage

  1. Créez : CA YTD = TOTALYTD([Total CA]; Dates[Date]) — vérifiez dans une matrice Mois × mesures : le cumul grimpe puis repart en janvier.
  2. Créez : CA N-1 = CALCULATE([Total CA]; SAMEPERIODLASTYEAR(Dates[Date])) (nécessite des données sur 2 ans — dupliquez vos ventes décalées d'un an dans le CSV si besoin).
  3. Complétez : Évol % = DIVIDE([Total CA] - [CA N-1]; [CA N-1]) en format %.
  4. Assemblez la matrice de pilotage : Mois en lignes, les 4 mesures en valeurs — la réponse à « où en est-on ? » tient sur un visuel.
Les mesures temporelles standard de tout tableau de bord de direction — réutilisables sur tous vos futurs modèles.

Points clés à retenir

  • Toute la time intelligence repose sur la table de dates MARQUÉE : le 2.5 n'était pas optionnel.
  • TOTALYTD, SAMEPERIODLASTYEAR, DATEADD : trois fonctions couvrent les demandes courantes.
  • L'évolution s'exprime en valeur ET en % : les deux mesures vont par paire.
  • Construisez ces mesures une fois proprement : elles se copient de modèle en modèle toute votre carrière.

Questions fréquentes

Mon CA N-1 affiche vide ou faux : pourquoi ?

Trois suspects : la table de dates n'est pas marquée, la relation date passe par la mauvaise colonne, ou l'historique ne couvre pas N-1. Vérifiez dans cet ordre — c'est l'un des trois, à 95 %.

Comment gérer un exercice fiscal décalé (clôture en juin) ?

TOTALYTD accepte la date de fin d'exercice : TOTALYTD([CA]; Dates[Date]; "30/06"). Pour les besoins complexes, on enrichit la table de dates de colonnes fiscales (AnnéeFiscale, MoisFiscal) — la beauté d'avoir SA table calendrier.

Autres ressources