Récupérer les jours fériés avec Power Query

Quelle est la date du lundi de Pâques pour l’année 2024 ?  La dimension Date est un axe fondamental pour analyser des données. Et très souvent, nous avons besoin de connaître les dates des jours fériés.

  • pour gérer un planning

  • pour établir une prévision journalière

  • pour calculer des mesures et des indicateurs …

Sur le site api.gouv.fr, vous accédez à des jeux de données constamment à jour. L’API des Jours fériés liste les jours fériés tels que définis dans le code du travail, pour différentes zones constituant la France.

Les API (Application Programming Interface) permettent à deux applications de communiquer entre elles et de s’échanger des données.

Une des grandes forces de Power Query est la richesse de ses connecteurs : Fichiers, base de données et même depuis le web.

 
 

Dans cet article, je vous explique comment récupérer dynamiquement les jours fériés  sans VBA et sans écrire une seule ligne de code.

En quatre étapes, vous allez pouvoir récupérer automatiquement les jours fériés avec Power Query et les exploiter dans vos reports Excel ou Power BI.

 
 

Utiliser le connecteur Obtenir des données à partir du web

Les API (Application Programming Interface) permettent à deux applications de communiquer entre elles et de s’échanger des données.

La connexion entre Power BI est une API nécessite d’utiliser un connecteur de source de données web. 

 
 
  • Créer un nouveau fichier Excel

  • Dans le Menu Données > Obtenir des données, cliquez sur À partir d’autres sources > À partir du web

 
 

Récupérer les données sur le site api.gouv.fr

Le site api.gouv.fr référence les API de toutes les administrations qui rendent leurs données disponibles. Une grande partie des données publiques sont libres d’accès. C’est ce que l’on appelle l’Open data. Tout le monde peut y accéder.

L’API des Jours fériés liste les jours fériés tels que définis dans le code du travail, pour différentes zones constituant la France.

La connexion à une API se fait par l’intermédiaire d’une adresse URL qui contient la fonctionnalité demandée et les paramètres de la requête.

Les détails de construction de l’URL d’accès aux jours fériés est disponible à cette adresse : https://calendrier.api.gouv.fr/jours-feries/

Pour obtenir la liste des jours fériés pour une zone, 20 ans dans le passé et 5 ans dans le futur, Il suffit d’ajouter  /{zone}.json à cette adresse

Par exemple :https://calendrier.api.gouv.fr/jours-feries/metropole.json liste les jours fériés entre 2003 et 2028 pour la métropole

pour obtenir la liste des jours fériés pour une zone, pour une année, il suffit d’ajouter /{zone/{année}}.json à cette adresse

Par exemple : https://calendrier.api.gouv.fr/jours-feries/metropole/2023.json  liste les jours fériés en 2023  pour la métropole

 
 
  • Dans la fenêtre A partir du web, entrez l’URL ci-dessus et cliquez sur OK

  • Dans la fenêtre d’authentification, sélectionner Anonyme et cliquez sur Se connecter

Power Query récupère la réponse du service API sous la forme d’un fichier au format json.

 
 

Convertir en tableau la réponse au format json

JSON (JavaScript Objet Notation) est un langage léger d’échange de données textuelles structurées basées sur des paires nom/valeur et des listes ordonnées. 

Pour l’exploiter avec Power Query, il faut le transformer en table.

 
 
  • Sélectionner le requête metropole

  • Cliquez sur le bouton Convertir En table

Power query transforme la liste json en une table avec une colonne Name contenant la date du jour férié et une autre colonne Value contenant  le nom du jour férié.

 
 

Renommer les entêtes de colonnes et changer le type

Pour exploiter notre nouvelle table des jours fériés, il ne nous reste plus qu’à renommer les entêtes de colonnes et changer le type de données.

 
 
  • Sélectionner la colonne Name et renommer l’entête de colonne en Date

  • Changer le type de données de la colonne Date en Date

  • Sélectionner la colonne Value et renommer l’entête de colonne en Jour fériés

  • Changer le type de données de la colonne Jours fériés en Texte

La table des jours fériés est maintenant prête à être utilisé soit dans d’autres transformations, soit directement dans nos reports d’analyse sous Excel ou Power BI

Vous pouvez maintenant partager cette table des jours fériés avec tous les utilisateurs de votre organisation. 

L’utilisation la plus courante d’une table des jours fériés est de la fusionner avec votre table Date pour ajouter une colonne calculée des jours ouvrés.

Dans cet article, Une table des dates dynamique avec Power Query, je vous explique comment créer une table de dates en partant de votre table de faits (vos ventes, vos livraisons, votre planning …)

Il est ensuite très facile d’ajouter d’autres colonnes qui affichent les attributs de la date dont les jours fériés.