Il y a quelques temps, j’ai rédigé l’article Fan de Stephen Few? Reproduisez aisément sa plus célèbre visualisation où je vous invitais à télécharger un fichier Excel vous permettant de reproduire le tableau de bord ci-dessous. En ce moment, je suis en train de créer l’équivalent dans Power BI, à partir d’un modèle de données, plutôt complexe. Tout allait pour le mieux jusqu’à ce que j’en arrive à la portion qui permet d’afficher les 12 derniers mois sur un graphique sparkline. Dans mon rapport Power BI, il faut préciser que l’usager peut choisir de regarder le rapport selon l’année et le mois qu’il désire. La tendance des 12 derniers mois doit donc être dynamique. Après quelques essais et erreurs et quelques recherches, j’ai finalement découvert comment obtenir le résultat recherché, que je vous présente dans cet article. J’espère que cette démarche vous sera utile!
Afficher l’évolution des ventes des 12 derniers mois
L’objectif est donc de laisser l’usager choisir un mois et une année et afficher dans le rapport, la tendance des 12 derniers mois dans un graphique sparkline (et j’ai aussi ajouté un graphique en colonnes pour vous aider à comparer les valeurs obtenues).
Bien sûr, il est possible d’écrire aisément une formule qui permet d’obtenir la somme des ventes cumulées des 12 derniers mois, par le biais de la fonction de Time Intelligence DATESINPERIOD ci-dessous. Toutefois, ceci ne permet pas d’obtenir le résultat recherché. Si vous placez cette mesure dans une tuile de carte, vous verrez le montant cumulé des 12 derniers mois. J’ai d’ailleurs inséré une telle carte dans mon rapport, ci-dessus. Mais si vous placez cette mesure dans un graphique en colonnes, vous n’obtiendrez qu’une seule colonne. C’est normal. Les filtres de mois et d’année influencent la tuile. Et si vous modifiez les interactions pour ne pas que les mois et les années filtrent la tuile et bien, vous verrez alors toutes les données de tous les mois, en tout temps.
Dans le rapport ci-dessus, j’ai inséré cette mesure dans une table qui n’est pas influencée par les segments de mois et d’année. On peut donc voir en tout temps les ventes nettes mensuelles. J’ai inséré cette table pour fins de validation de ma démarche.
Pour obtenir le résultat recherché, j’ai donc plutôt utilisé la mesure suivante:
Description des variables
- MaxDateAct : Calcule la date max de ma table de faits, sans égard aux filtres de dates du rapport
- DernierJourSelect : Calcule le dernier jour du mois sélectionné dans les filtres du rapport
- DernierJourSelect12MTH: Calculer le dernier jour du mois, 12 mois précédent le mois sélectionné dans les filtres du rapport
À noter que j’ai utilisé -12 dans ma fonction EDATE. Toutefois, il aurait été possible de définir un paramètre flexible et laisser l’usager choisir la période désirée.
Description de la formule
- J’utilise une fonction IF où le test logique vérifie que:
- La date max de ma table de faits est à la fois
- Plus petite ou égale à la date sélectionnée
- Plus grande que le dernier jours du mois, 12 mois précédent le mois sélectionné
- Elle vérifie donc qu’elle se trouve dans l’intervalle demandé par l’usager
- La date max de ma table de faits est à la fois
- Si la condition est rencontrée, on retourne la mesure, pour toutes les dates citées en condition (et on ignore les filtres de dates sur la table de faits)
- Sinon, on retourne 0
Les conditions sont là pour définir le bon intervalle temporel et empêcher d’obtenir des erreurs pour des valeurs non existantes. Dans mon exemple, ci-dessous, mes données de ma table de faits commencent au 1er janvier 2017 et se terminent au 30 juin 2018. Ce faisant, quand l’usager sélectionne JUIN 2018, il voit 12 données dans le graphique sparkline et le graphique en colonnes. Toutefois, lorsqu’il sélectionne JUIN 2017, il voit seulement 6 données.
Attention! pour que le tout fonctionne, vous devez absolument utiliser le champ temporel (ici année-mois) de la table de faits dans votre visualisation, puisque c’est sur cette table qu’on demande d’ignorer les filtres de dates.
NOTRE OFFRE DE FORMATIONS
Le CFO masqué vous offre un vaste choix de formations Excel et Power BI, réparties dans 8 catégories: Excel – Tableaux de bord, Excel – Modélisation financière, Excel – VBA, Excel – Power Tools, Excel – Ninja, Power BI, Analytique d’affaires et Finance corporative. Ces formations sont offertes en classe, en entreprise et en ligne. Nos formateurs sont des experts dans leur domaine et ils sont accrédités par Emploi-Québec et vous remettent un certificat, à la fin de chaque formation, que vous pouvez notamment utiliser pour faire reconnaître des heures de formation continue auprès de votre ordre professionnel. De plus, nos formations peuvent mener à l’obtention d’une accréditation.
Découvrez quelles formations vous conviennent
Pour info: 514-605-7112 ou info@lecfomasque.com