DAX pour Power BI & Excel

Bonnes pratiques de filtre avec CALCULATE

Au lieu de (ALLEXCEPT):

Ventes par pays =
CALCULATE(
  Sales[SalesAmount],
  ALLEXCEPT( Customer, Customer[Continent] )
)

Donne le bon résultat, mais suppose que le champ Continent soit présent dans la vignette.

ALLEXCEPT commence par supprimer TOUS les filtres sur Customer.

Supprime tous les filtres de la table Customer puis applique un filtre :

Ventes par continent =
CALCULATE(
    Sales[SalesAmount],
    REMOVEFILTERS ( Customer ),
    VALUES ( Customer[Continent] )
)

SalesAmount sera toujours calculé par rapport à Continent, même si le champ est absent de la vignette.

Avec plusieurs colonnes :

Supprime tous les filtres de la table Customer puis applique un filtre de plusieurs colonnes :

Ventes par continent =
CALCULATE(
    Sales[SalesAmount],
    REMOVEFILTERS ( Customer ),
    SUMMARIZE ( Costumer, Costumer[Continent], Costumer[...] )
)

Ou CROSSJOIN (VALUES(), VALUES()) si colonnes de différentes tables.