Créer des Groupes de Calcul en DAX : Industrialiser vos Métriques

@joekakone

Joseph Konka @joekakone

03/03/2026 · 8 min

Découvrez les Groupes de Calcul (Calculation Groups) intégrés nativement à Power BI Desktop : factorisez vos calculs temporels avec SELECTEDMEASURE(), formatez dynamiquement les chaînes et éliminez la duplication de mesures.

Voici l'un des casse-têtes les plus épuisants pour tout développeur Power BI en entreprise.

Imaginez que vous deviez suivre 6 indicateurs métiers : - Chiffre d'Affaires - Marge Brute - Volume Vendu - Coût d'Achat - Budget Prévisionnel - Nombre de Commandes

Et pour chacun de ces 6 indicateurs, la direction vous demande d'afficher 4 déclinaisons temporelles : 1. La valeur actuelle 2. Le cumul annuel (YTD) 3. La valeur de l'année précédente (N-1) 4. La croissance annuelle (YoY %)

En méthode classique, vous seriez condamné à créer 24 mesures DAX distinctes (Ventes YTD, Marge YTD, Coût YTD, Ventes N-1, Marge N-1...). Et si le métier vous demande d'ajouter le cumul mensuel (MTD), vous devez réécrire 6 mesures de plus !

C'est précisément pour éradiquer cette duplication que Microsoft a intégré nativement dans Power BI Desktop les Groupes de Calcul (Calculation Groups).


💡 Le Principe Révolutionnaire des Groupes de Calcul#

Un groupe de calcul est une table dimensionnelle spéciale qui ne contient pas de données physiques, mais des règles de transformation applicables à n'importe quelle mesure existante.

Il s'appuie sur une fonction magique : SELECTEDMEASURE().

┌────────────────────────────────────────────────────────┐
│             LE MÉCANISME DE SELECTEDMEASURE()          │
│ 1. L'utilisateur glisse [Chiffre d'Affaires]           │
│ 2. Le groupe de calcul intercepte la mesure            │
│ 3. Il lui applique la formule temporelle :             │
│    TOTALYTD(SELECTEDMEASURE(), Dim_Calendrier[Date])   │
│ 4. Si l'utilisateur remplace par [Marge Brute],        │
│    la même formule calcule automatiquement la marge !  │
└────────────────────────────────────────────────────────┘

Une seule règle écrite une fois pour toutes s'applique instantanément à l'ensemble des mesures de votre modèle !


🛠️ Créer un Groupe de Calcul dans Power BI Desktop#

Depuis les versions récentes de Power BI Desktop, la création de groupes de calcul s'effectue directement dans l'interface sans nécessiter d'outils externes tiers :

  1. Rendez-vous dans la vue Modèle (l'icône de schéma relationnel à gauche).
  2. Dans le ruban supérieur, onglet Accueil, cliquez sur Groupe de calcul (ou faites un clic droit dans le volet Données > Nouveau groupe de calcul).
  3. Power BI crée une table spéciale avec une colonne par défaut. Renommez la table Calculs Temporels et la colonne Période.

📐 Définir les Éléments de Calcul (Calculation Items)#

Dans votre groupe de calcul Calculs Temporels, nous allons créer 4 éléments de calcul :

1. Élément Actuel#

Renvoie la mesure telle quelle, sans aucune altération :

Formule de l'élément Actuel
SELECTEDMEASURE()

2. Élément YTD (Cumul annuel)#

Formule de l'élément YTD
TOTALYTD(
    SELECTEDMEASURE(),
    Dim_Calendrier[Date]
)

3. Élément N-1 (Année précédente)#

Formule de l'élément N-1
CALCULATE(
    SELECTEDMEASURE(),
    SAMEPERIODLASTYEAR(Dim_Calendrier[Date])
)

4. Élément YoY % (Croissance annuelle en %)#

Formule de l'élément YoY %
VAR ValActuelle = SELECTEDMEASURE()
VAR ValPrecedente = CALCULATE(SELECTEDMEASURE(), SAMEPERIODLASTYEAR(Dim_Calendrier[Date]))

RETURN
DIVIDE(
    ValActuelle - ValPrecedente,
    ValPrecedente
)

🎨 Le Format Dynamique (Format String Expression)#

Voici un piège classique : si vous appliquez ce groupe de calcul à votre mesure [Montant Ventes], les trois premiers éléments (Actuel, YTD, N-1) doivent s'afficher en euros (€), mais le quatrième (YoY %) doit impérativement s'afficher en pourcentage (+12.4%) !

Power BI permet de spécifier une chaîne de format dynamique propre à chaque élément de calcul :

  1. Sélectionnez l'élément de calcul YoY %.
  2. Dans le volet des propriétés à droite, activez l'option Chaîne de format (Format String).
  3. Définissez la chaîne de format suivante :
    "+0.0%;-0.0%;0.0%"
    

Désormais, dès que YoY % est évalué, le résultat s'affiche automatiquement en pourcentage avec le signe positif ou négatif approprié !


📊 Utiliser le Groupe de Calcul dans vos Rapports#

Rendez-vous dans la vue Rapport :

  1. Insérez un visuel Matrice.
  2. En lignes : Placez vos catégories de produits (Dim_Produits[NomCategorie]).
  3. En colonnes : Glissez le champ Période de votre groupe de calcul Calculs Temporels.
  4. En valeurs : Déposez simplement votre mesure de base [Montant Ventes].

Magie de Power BI : votre matrice déploie instantanément 4 colonnes (Actuel, YTD, N-1, YoY %) parfaitement calculées et formatées !

Exemple de matrice exploitant des déclinaisons temporelles

[!TIP] Vous pouvez également déposer le champ Période dans un filtre de rapport (Slicer). Vos utilisateurs pourront basculer l'intégralité d'un tableau de bord de la vue "Ventes Actuelles" à la vue "Cumul YTD" en un seul clic de bouton !


Vous maîtrisez désormais les techniques de modélisation les plus avancées du marché. Pour ancrer définitivement ces compétences, mettons-les en pratique dans un grand atelier d'application de modélisation et de calculs DAX de bout en bout !

Commentaires

Inscrivez-vous à une formation complète

Voir le catalogue