La fonction CALCULATE est sans doute la plus importante – et parfois la plus intimidante – du langage DAX dans Power BI.
Pourquoi ? Parce qu’elle permet de modifier le contexte de filtre, c’est-à-dire la façon dont Power BI choisit les données à inclure dans un calcul. Une fois maîtrisée, CALCULATE devient l’outil central pour construire des indicateurs fiables : ratios, comparaisons temporelles, analyses conditionnelles, etc.
Dans cet article, vous allez découvrir :
CALCULATE permet d’évaluer une expression (comme une somme, une moyenne ou un compte) dans un contexte de filtre réécrit.
C’est comme dire à Power BI : “Calcule cette mesure, mais uniquement dans les conditions que je précise, même si les filtres du rapport disent autre chose”.
Exemple simple :
Ici, Power BI calcule le chiffre d’affaires seulement pour les ventes en France, quels que soient les filtres du visuel.
La structure de base est :
Expression : une mesure ou un calcul (ex. SUM
, AVERAGE
, COUNTROWS
).
Filtres : une ou plusieurs conditions appliquées au calcul.
Types de filtres possibles :
Filtres booléens → Ventes[Pays] = "France"
.
Filtres de table via FILTER()
→ plus flexible, mais moins performant.
Fonctions spéciales → ALL
, REMOVEFILTERS
, KEEPFILTERS
, ALLEXCEPT
, qui permettent de retirer ou d’adapter les filtres existants
En DAX, il y a deux notions fondamentales :
CALCULATE modifie uniquement le contexte de filtre.
C’est ce qui la rend si puissante : vous pouvez forcer Power BI à “ignorer” certains filtres, ou au contraire en ajouter de nouveaux.
Pourcentage du total
On obtient le pourcentage du chiffre d’affaires réalisé en France par rapport au CA global.
Comparer une période à l’année précédente
Très utilisé dans les KPI financiers ou commerciaux pour comparer N vs N-1.
Conditions multiples
On isole ici le chiffre d’affaires pour la France en 2023.
Top N clients
Résultat : le CA cumulé des 5 meilleurs clients.
Pour mieux comprendre CALCULATE, voyons un exemple concret que vous pouvez reproduire.
Nous avons une table Ventes avec : Date
, Pays
, CatégorieProduit
, Montant
.
Étape 1 : Mesure de base
Affichez-la dans une carte visuelle : vous obtenez le CA global.
Étape 2 : Restreindre à un pays
Ajoutez une deuxième carte : vous comparez CA total vs CA France.
Étape 3 : Calculer un pourcentage
Étape 4 : Comparaison temporelle
CALCULATE renvoie une valeur (somme, moyenne, ratio).
CALCULATETABLE renvoie une table filtrée.
Cette formule retourne la liste des clients français, pas un chiffre.
Depuis 2024, Power BI propose les visual calculations : des calculs créés directement dans un visuel, sans écrire de DAX.
CALCULATE reste donc indispensable dès que l’on veut bâtir un modèle robuste et réutilisable.
Commencez petit : un filtre, une mesure.
Utilisez des variables (VAR
) pour clarifier vos formules. Pour en savoir plus sur l’utilisation des variables, consultez notre article mesures Power BI.
Privilégiez les filtres booléens (plus rapides que FILTER
).
Évitez les formules trop lourdes : découpez vos mesures.
Soignez votre modèle de données : un schéma en étoile clair simplifie l’usage de CALCULATE.
SUM dépend du visuel. CALCULATE permet d’imposer des filtres personnalisés.
La fonction CALCULATE est le pilier central du langage DAX.
Elle vous permet de :
Au départ, CALCULATE peut sembler mystérieuse. Mais une fois que l’on comprend son rôle sur le contexte de filtre, elle devient l’outil le plus puissant et le plus intuitif de Power BI.
Pour maîtriser Power BI en profondeur, vous pouvez suivre notre formation complète.