Créer une pyramide des âges

Voir plus d’articles

Partager sur :

Dès qu’on parle de données RH, on a envie de visualiser la pyramide des âges des collaborateurs. La logique que l’on pourrait employer dans Excel pour réaliser ce type de graphique ne doit pas être utilisée dans Power BI.



Ok, mais alors dans Power BI, qu’est-ce qu’on fait ?



Lorsque l’on utilise Power BI, il faut de manière générale minimiser le nombre d’informations que l’on stocke en colonne. Alors dans ce cas, pas d’ajout de colonne avec l’âge, mais un calcul à la volée, qui permettra d’obtenir le résultat de façon plus efficiente.



Tout d’abord, il faut créer la table des tranches d’âge



Pour créer une table dans Power BI qui n’a pas vocation à évoluer dans le temps, on utilise dans le Menu Accueil du ruban la fonctionnalité Entrer des données.

Puis on complète la table telle qu’on souhaite la voir.

Il vous faudra à minima :

  • Le nom des tranche,
  • L’âge minimum,
  • L’âge maximum
  • Et petit plus : un champ pour gérer l’ordre dans lequel on souhaite apparaitre les catégories, afin que ce ne soit pas obligatoirement par ordre alphabétique.

Voici un exemple :

Une fois les données complétées dans la table, on la nomme et on la charge.



Ensuite, il faut créer une mesure



La mesure qui permettra de déterminer dans quelle catégorie d’âge et de sexe se trouve une personne sera la suivante :

  • On début par 3 éléments en variable
    • 2 pour figer la valeur minimum et maximum des tranches que l’on fera apparaitre plus tard dans notre graphique (appelons les __Debut et __Fin)
    • 1 pour figer la date maximale de notre périmètre sélectionné, afin que l’approche soit juste quelque soit la date à laquelle on s’arrête.
  • On démarre ensuite une somme itérative
    • L’itération se fait sur la table salarié que l’on va filtrer
      • Avant de filtrer, on calcule à la volée grâce à une variable l’âge de chaque salarié. Appelons-la : __age. Attention au placement de cette variable, il n’est juste que si on le fait au sein du tableau Salarié. Si vous mettez cette variable en tout début de mesure, votre calcul ne sera pas juste car vous aurez seulement calculé l’âge du salarié le plus vieux.
      • Au confronte cette variable __age au variable de __Debut et __Fin : attention là encore au signe que vous utilisez : supérieur ou égal à __Debut et strictement inférieur à __Fin dans mon exemple, pour ne compter personne 2 fois.
    • On itère ensuite en vérifier le Sexe, et en mettant un +1 pour une Homme et un -1 pour une femme.

Et voici le résultat :



Enfin, il faut réaliser le visuel  



La meilleure option me semble le graphique à barres empilées avec :

  • En axe, la colonne Tranche de votre table précédemment créée,
  • En légende, la notion de sexe de votre table salarié,
  • En valeur votre mesure Pyramide age.

Et pour être parfait, on change le tri automatique pour le mettre en tri par Tranche, croissant. Bien évidemment, cela supposé d’avoir préalablement trier votre champ tranche par votre champ ordre.

Et le tour est joué. Voici le résultat.





Et pour aller plus loin ?



Si on veut connaitre la même chose sur l’an dernier, en prenant bien compte l’âge des personnes à fin d’année dernière, surtout, pas de calcul compliqué. La fonction SAMEPERIODLASTYEAR fera l’affaire.

 Et attention, mon exemple ici considère que mes salariés sont toujours présents dans l’effectif, ce qui n’est pas une réalité en soit. Il faudrait donc coupler le contrôle sur la table Salarié pour s’assurer que le salarié est toujours compris dans l’effectif.



KPI Consulting – Julie GUIDE