DAX avancé : contextes, time intelligence et groupes de calcul
DAX avancé (contexte, time intelligence) est un cours de niveau avancé de 5 leçons (environ 1 h 40), avec 15 exercices et 15 questions de quiz. Prérequis : DAX fondamentaux. Le cours demande une machine virtuelle Windows avec Power BI, prévue dans une phase ultérieure de la plateforme.
- Power BI
- Avancé
- 5 leçons
- 1 h 40
- 15 exercices
- Machine virtuelle Windows (phase 2)
Le cours en bref
Ce cours avancé explique ce qui se passe vraiment quand une mesure DAX est évaluée : contexte de ligne, contexte de filtre et transition de contexte. Vous maîtrisez ensuite ALL, ALLEXCEPT, ALLSELECTED et KEEPFILTERS, la time intelligence (YTD, N-1, variations), les cumuls, moyennes mobiles, classements et fonctions de fenêtre. Vous terminez avec les groupes de calcul et les méthodes de diagnostic de performance.
Ce que tu sauras faire
- Prévoir le résultat d'une formule en analysant contexte de ligne, contexte de filtre et transition de contexte
- Choisir entre ALL, REMOVEFILTERS, ALLEXCEPT, ALLSELECTED et KEEPFILTERS
- Construire des mesures YTD, N-1 et variations fiables, bornées aux périodes disponibles
- Calculer cumuls, moyennes mobiles, classements, top N et comparaisons par position
- Créer un groupe de calcul temporel avec formats dynamiques
- Diagnostiquer et optimiser une mesure lente
Programme des 5 leçons
- Distinguer précisément contexte de ligne et contexte de filtre
- Expliquer et utiliser la transition de contexte
- Prévoir le résultat d'une formule dans une colonne calculée ou un itérateur
- 02
Les modificateurs de CALCULATE : ALL, ALLEXCEPT, ALLSELECTED, KEEPFILTERS
- Choisir le bon modificateur pour retirer ou conserver des filtres
- Calculer des parts relatives à la sélection de l'utilisateur
- Comprendre l'ordre d'évaluation des arguments de CALCULATE
- 03
Time intelligence : cumuls annuels et comparaisons N-1
- Calculer un cumul depuis le début de l'année (YTD)
- Comparer une période à la même période de l'année précédente
- Calculer une variation et éviter les comparaisons trompeuses
- 04
Cumuls, moyennes mobiles, classements et fonctions de fenêtre
- Calculer un cumul glissant et une moyenne mobile
- Classer des éléments avec RANKX et isoler un top N avec TOPN
- Utiliser OFFSET pour comparer à l'élément précédent d'un visuel
Cumul courantMoyenne mobileRANKX et TOPNFonctions de fenêtre
- 05
Groupes de calcul, performance et débogage
- Créer un groupe de calcul pour appliquer des variantes temporelles à toutes les mesures
- Diagnostiquer une mesure lente avec l'analyseur de performances et la vue Requête DAX
- Appliquer les bonnes pratiques d'écriture DAX performante
Projet final
Tableau de pilotage temporel d'une enseigne
À partir du jeu de ventes mensuelles 2025-2026 (Lyon et Lille), construisez un modèle et une page de pilotage pour la direction : chiffre d'affaires, cumul annuel, comparaison N-1 et variation bornées aux périodes disponibles, part de chaque mois dans l'année et dans la sélection, moyenne mobile 3 mois, classement des mois et top 3. Les variantes temporelles doivent passer par un groupe de calcul, et vous documentez la performance des visuels.
Livrables
- Le fichier .pbix avec la table Dates marquée, les mesures et le groupe de calcul Temps
- Une page de rapport : matrice mensuelle, courbe CA et moyenne mobile, carte top 3, segment Année
- Une requête DAX de recette (vue Requête DAX) vérifiant au moins 6 valeurs clés
- Une note d'une page expliquant le comportement de trois mesures (contexte, modificateurs utilisés)
Critères d'évaluation
- Valeurs exactes : YTD juin 2026 1 395, N-1 juin 2026 235, Var YTD +13,0 %, cumul mars 2026 3 180, MM3 mars 2026 216,67, top 3 = 810
- Comparaisons bornées : pas de −44,9 % trompeur ni de cumul sur les mois futurs
- Usage pertinent des modificateurs (ALLSELECTED, ALLEXCEPT, KEEPFILTERS)
- Groupe de calcul fonctionnel avec format dynamique
- Mesures lisibles (variables, commentaires) et performances vérifiées
Questions fréquentes
Qu'est-ce que la transition de contexte en DAX ?
C'est la conversion, par CALCULATE, du contexte de ligne courant en contexte de filtre. Elle se produit aussi chaque fois qu'on référence une mesure dans une colonne calculée ou un itérateur.
Quelle différence entre ALL et ALLSELECTED ?
ALL (ou REMOVEFILTERS) retire tous les filtres, y compris ceux des segments. ALLSELECTED retire seulement les filtres posés par le visuel et conserve la sélection de l'utilisateur.
Pourquoi mes calculs N-1 sont-ils faux sur l'année en cours ?
Souvent parce que l'année en cours est incomplète : on compare quelques mois à une année entière. Il faut borner la comparaison à la dernière date disponible.
À quoi servent les groupes de calcul ?
Ils appliquent une même logique (YTD, N-1, variation) à toutes les mesures grâce à SELECTEDMEASURE, ce qui évite de dupliquer des dizaines de mesures.
Ce cours, raconté pour ton métier
Dis ce que tu veux savoir faire : « DAX avancé (contexte, time intelligence) » prend sa place dans ton parcours, avec des exemples de ton secteur. Les notions restent celles du cours.