Liste formule dax dans Power BI

Liste Formule DAX Power BI (Formules Avancées)

Avez-vous lu mon dernier article sur les fonctions DAX de base que vous pouvez trouver ici : Data Analysis Expressions (DAX) ? Maintenant, vous souhaitez utiliser des fonctions DAX avancées pour une analyse approfondie de vos données ? Dans cet article, je vous explique en détail comment vous pouvez utiliser cette liste de formules DAX dans Power BI pour analyser vos données de ventes.

  1. Calendar
  2. DatesYTD
  3. Sameperiodlastyear
  4. DatesQTD
  5. Summarize
  6. Addcolumns
  7. Switch
  8. DateDif
  9. Removefilters
  10. Allexcept

Imaginez que vous êtes un analyste des ventes dans une entreprise qui vend des produits Apple reconditionnés et que vous souhaitez déterminer :

Les ventes cumulées depuis le début de l’année.

La comparaison des ventes de cette année avec celles de l’année précédente.

Les ventes par trimestre.

Les ventes par produit et par région.

Et créer une table résumée pour approfondir vos analyses.

Ajouter des colonnes supplémentaires dans cette table résumée.

Tester des hypothèses spécifiques concernant certaines régions, par exemple, si les ventes totales sont supérieures à 10,000, si oui, alors succès ; sinon, échec.

Et enlever certains filtres pour obtenir une vue d’ensemble plus claire.

Et finalement, vous voulez maintenir certains filtres actifs tout en supprimant d’autres.

Laissez-moi vous expliquer comment utiliser les formules DAX dans Power BI pour analyser efficacement vos données de ventes.

Calendar – Liste Formule Dax Power BI

Nous commençons l’analyse par la création d’un calendrier. Voici comment vous pouvez créer un calendrier en utilisant DAX.

Vous pouvez utiliser la fonction « Calendar » en DAX. Cette fonction est utilisée pour générer une table de dates allant de la première date à la dernière date.

La syntaxe de la fonction « Calendar » est la suivante :

Calendar (Date(), Date())

cette table de dates est essentielle pour effectuer des analyses temporelles et utiliser des fonctions de séries temporelles.

Donc, dans notre exemple, la mesure que nous utilisons est la suivante :

CALENDRIER = CALENDAR(DATE(2019, 1, 31), DATE(2023, 12, 31))

DatesYTD – Liste Formule Dax Power BI

Maintenant, vous voulez calculer les ventes cumulées depuis le début de l’année ? Voici comment vous pouvez utiliser la formule DAX Power BI DatesYTD pour les calculer.

La formule DatesYTD renvoie une table contenant toutes les dates depuis le début de l’année jusqu’à la date en cours dans le contexte actuel de filtre. Elle est utilisée avec la formule Calculate et permet de calculer les ventes cumulées depuis le début de l’année. YTD signifie Year to Date.

La syntaxe de la fonction DATESYTD est la suivante :

DATESYTD(dates, [Year end date], [Filter])

Dates : Ce paramètre spécifie la colonne contenant les dates ou un calcul renvoyant une table de dates.

[Year end date] : Ce paramètre spécifie une date facultative marquant la fin de l’année. S’il n’est pas spécifié, la date par défaut est le 31 décembre de l’année en cours.

Filter : Ce paramètre permet de fournir une colonne supplémentaire utilisée pour le filtrage

Donc, dans notre exemple, la mesure que vous pouvez utiliser est la suivante :

VentesYTD = CALCULATE (SUM(‘Ventes'[Montant]), DATESYTD(‘CALENDRIER'[Date]))

Sameperiodlastyear

Vincent voulait comparer les ventes de l’année en cours avec celles de l’année précédente. Il a utilisé la fonction SamePeriodLastYear. Cette fonction renvoie une table de dates correspondant aux mêmes périodes de l’année précédente.

La syntaxe de la fonction sameperiodlastyear est la suivante :

SAMEPERIODLASTYEAR(dates)

Dates (obligatoire) : une colonne de type date ou une expression qui renvoie une table contenant une colonne de type date.

Donc dans notre exemple, la mesure que nous utilisons est la suivante :

VentesAnnéePrécédente = CALCULATE(SUM(‘Ventes'[Montant]), SAMEPERIODLASTYEAR(‘CALENDRIER'[Date]))

DATESQTD – Liste Formule Dax Power BI

Dans notre exemple, nous voulons calculer les ventes cumulées depuis le début du trimestre. C’est pourquoi nous allons utiliser DatesQTD.

La fonction DatesQTD renvoie une table contenant toutes les dates depuis le début du trimestre jusqu’à la date en cours dans le contexte actuel de filtre. Cette fonction est utilisée avec « calculate ».

La syntaxe de la fonction DATESQTD est la suivante :

DATESQTD(dates, filter)

Dates (obligatoire) : une colonne de type date ou une expression qui renvoie une table contenant une colonne de dates.

Filter (facultatif) : Une expression DAX optionnelle appliquée comme filtre à la table de dates.

Donc la mesure utilisée dans notre exemple est la suivante :

VentesQTD = CALCULATE(SUM(‘Ventes'[Montant]), DATESQTD(‘CALENDRIER'[Date]))

Summarize

Vincent voulait créer une table récapitulative pour voir le total des ventes pour chaque produit dans chaque région. Il a donc utilisé la fonction Summarize pour regrouper les données selon des colonnes spécifiques : NomProduit et NomRégion.

La syntaxe de la fonction « Summarize » est la suivante :

SUMMARIZE(table, groupBy_columnName1, [groupBy_columnName2, …], [name = expression], …)

Table (obligatoire) : La table contenant les données à résumer.

GroupBy_columnName (obligatoire) : Une ou plusieurs colonnes selon lesquelles les données seront regroupées.

Name = (facultatif) : Des paires nom-expression facultatives définissant des colonnes calculées dans la table récapitulative.

La mesure utilisée dans l’exemple est la suivante :

SUMMARIZE( Ventes, Produits[NomProduit], Régions[NomRégion], « TotalVentes », SUM(Ventes[Montant]) )

Addcolumns

Pour ajouter de nouvelles colonnes calculées dans sa table existante, Vincent a utilisé la fonction « AddColumns »

Vincent a ajouté la colonne des ventes cumulées de l’année en cours (Ventes YTD) et celle des ventes de l’année précédente (Ventes année précédente) à sa table récapitulative.

La syntaxe de la fonction Addcolumns est la suivante :

ADDCOLUMNS(table, name, expression, [name, expression]…)

Table (obligatoire) : La table à laquelle vous souhaitez ajouter des colonnes.
Name (obligatoire) : Le nom de la nouvelle colonne que vous souhaitez ajouter.
Expression (obligatoire) : L’expression DAX qui calcule les valeurs pour la nouvelle colonne.
Name, Expression (facultatif) : des paires nom-expression supplémentaires pour ajouter plusieurs colonnes.

La mesure utilisée dans l’exemple est la suivante :

RésuméVentesAvecColonnes = ADDCOLUMNS( RésuméVentes, « VentesYTD », CALCULATE(SUM(‘Ventes'[Montant]), DATESYTD(‘CALENDRIER'[Date])), « VentesAnnéePrécédente », CALCULATE(SUM(‘Ventes'[Montant]), SAMEPERIODLASTYEAR(‘CALENDRIER'[Date])) )

SWITCH

Monsieur Dupont voulait tester une hypothèse spécifique. Il voulait vérifier si les ventes totales sont supérieures à 10 000. Si oui, alors succès, sinon échec. Vincent a donc utilisé la fonction SWITCH. SWITCH permet d’évaluer une expression et de renvoyer une valeur en fonction des conditions spécifiées.

La syntaxe de la fonction SWITCH est la suivante :

Expression : une expression qui est évaluée une seule fois et comparée aux valeurs spécifiées (value1, value2, etc.).

Value 1 – Value 2 : value1, result1, value2, result2, … : paires de valeurs et de résultats où chaque valeur est comparée à l’expression et le résultat correspondant est renvoyé si la valeur correspond.

Else : un résultat par défaut renvoyé si aucune des valeurs ne correspond.

La mesure utilisée dans l’exemple est la suivante :

AnalyseHypothèses = ADDCOLUMNS( RésuméVentesAvecColonnes, « HypothèseVentes », SWITCH( TRUE(), [TotalVentes] > 10000, « Succès », « Échec » ) )

DateDIF – Formules Dax Power BI

Vincent a utilisé DATEDIF pour calculer la différence en jours entre la première et la dernière date de vente. La fonction DATEDIF permet de calculer la différence entre deux dates selon l’unité spécifiée : « d » pour jours, « m » pour mois, et « Y » pour années.

La syntaxe de la fonction DateDif est la suivante :

DATEDIFF(start_date, end_date, interval)

Start_date (obligatoire) : la date de début pour le calcul de la différence.

End_date (obligatoire) : la date de fin pour le calcul de la différence.

Interval (obligatoire) : l’intervalle de temps pour lequel la différence est calculée.

Les valeurs possibles pour l’intervalle sont :

« SECOND »
« MINUTE »
« HOUR »
« DAY »
« MONTH »
« QUARTER »
« YEAR »

La mesure utilisée dans l’exemple est la suivante :

DifférenceDates = DATEDIF(MIN(‘Ventes'[Date]),MAX(‘Ventes'[Date]), « d »)

Removefilters

RemoveFilters est utilisée pour supprimer tous les filtres sur la table des produits. La fonction DAX RemoveFilters est utilisée avec CALCULATE et permet de calculer les ventes totales sans tenir compte des filtres appliqués aux produits.

La syntaxe de la fonction Removefilters est la suivante :

REMOVEFILTERS(table_or_column) (obligatoire) : la table ou
la colonne dont vous souhaitez supprimer les filtres.

La mesure utilisée dans l’exemple est la suivante :

VentesSansFiltres = CALCULATE(SUM(‘Ventes'[Montant]), REMOVEFILTERS(‘Produits’))

AllExcept

ALLExcept est une fonction DAX qui permet de supprimer tous les filtres des colonnes de la table, sauf ceux des colonnes spécifiées. Dans notre exemple, elle permet de calculer les ventes totales en tenant compte uniquement des filtres sur les produits et en ignorant les autres filtres.

La syntaxe de la fonction AllExcept est la suivante :

ALLEXCEPT(table, column [, column] [, …])

Table (obligatoire) : la table pour laquelle vous souhaitez supprimer les filtres de toutes les colonnes, sauf celles spécifiées.

Column (obligatoire) : une ou plusieurs colonnes pour lesquelles les filtres ne seront pas supprimés.

La mesure utilisée dans l’exemple est la suivante :

VentesParProduit = CALCULATE(SUM(‘Ventes'[Montant]), ALLEXCEPT(‘Ventes’, ‘Produits'[NomProduit]))

Les visualisations

liste formule dax power bi

liste formule dax power bi

Conclusion

J’espère que vous pouvez utiliser ces fonctions DAX avancées maintenant pour analyser vos données. Si vous avez la moindre question, n’hésitez pas à laisser un commentaire ci-dessous.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *