Piano Analytics dispose d’une API d’extraction des données. Nous allons voir comment exploiter cette API dans Excel (via du code VBA et Power Query) afin de pouvoir travailler facilement et rapidement avec les données de Piano Analytics dans un fichier Excel. Cela peut être utile pour un fichier de suivi (requêtes à executer regulierement) ou pour un fichier d’analyse (avec le besoin de memoriser les requêtes utilisées).
La méthode consiste à pouvoir programmer facilement des requêtes dans un tableau Excel (similaire à l’outil Query Explorer avec Google Analytics). Et que ce tableau de requêtes soit exploité par du code VBA pour executer les requêtes et enregistrer le résultat de chaque requête dans un onglet du fichier.
Cette méthode peut être décomposée en plusieurs parties :
- Le tableau de requêtes dans Excel
- Récuperation des infos de requêtes
- Detecter si il s’agit d’une requête à créer dans Power Query ou d’une requête existante à modifier
- Création / modification de la requête dans Power Query
- Execution des requêtes et Affichage des resultats dans Excel
Pour le tableau de requêtes, il s’agit de le remplir avec le langage de l’API de Piano. Pour cela, il est recommandé de passer par Data Query en configurant la requête souhaitée et en regardant comment cela se traduit dans le langage de l’API via le menu « Copier l’API body (POST) » (dans le menu en haut à droite du tableau des résultats). Par exemple, pour la metrique « Visites », cela correspond à « m_visits » dans le langage de l’API ».
Dans le tableau des requêtes, il est possible de configurer les infos suivantes :
- Nom de la requête (ce sera le nom de l’onglet contenant les résultats, ce nom doit être unique)
- ID du compte Piano (ID du compte à requêter)
- Date de début et Date de fin (il s’agit des dates à renseigner dans l’onglet « Execution des requetes », des formules recuperent la valeur automatiquement)
- Metriques (dans l’API body, il s’agit du contenu de [] de « columns » qui contient les métriques et dimensions)
- Dimensions (dans l’API body, il s’agit du contenu de [] de « columns » qui contient les métriques et dimensions)
- Tri (dans l’API body, il s’agit du contenu de [] de « sort »)
- Filtre (dans l’API body, il s’agit du contenu de [] de « filter »)
- Segment (dans l’API body, il s’agit du contenu de [] de « segment »)
- Maximum de lignes (par defaut : 100, maximum 10 000)
- Numero de page (si besoin de récupérer, des resultats au-delà des 10 000 premières lignes)
- Desactivation de la requête (si besoin de désactiver la mise à jour de requêtes pour améliorer le temps d’execution des requêtes)
Pour ajouter une nouvelle requête, il s’agit de rajouter une nouvelle colonne dans le tableau (en copiant-collant une nouvelle colonne à la suite).
Quand ce tableau de requêtes a été renseigné, il s’agit alors d’executer du code VBA pour programmer ces requêtes dans Power Query et afficher les résultats dans Excel (via ActiveWorkbook.Queries.Item(), ActiveWorkbook.Queries.Add(), ActiveSheet.ListObjects.Add() et ActiveSheet.Range(« A1 »).ListObject.QueryTable.Refresh). Power Query est un module Excel qui permet de configurer des requêtes vers différentes sources via le langage M (ce module est utilisé aussi par Power BI) et de réaliser des étapes de transformation avant d’importer les données dans Excel (principe d’un ETL). Power Query est accessible dans Excel, en allant dans Données > Obtenir des données > Lancer l’editeur Power Query (la fenêtre Power Query s’ouvre alors).
Pour executer le code VBA, il s’agit d’utiliser le bouton « Executer les requetes » dans l’onglet « Execution des requêtes ». Une modale informera alors l’utilisateur quand les résultats auront été importés dans Excel.
Le fichier Excel contient d’autres onglets :
- Parametrage des requetes (il s’agit de l’onglet pour le Tableau des requêtes)
- Aide_utilisation (il s’agit d’un onglet pour aider l’utilisateur novice à utiliser ce fichier)
- Aide_config (il s’agit d’un onglet avec les configurations necessaires pour les requêtes, apres avoir renseigné la clé API de votre compte Piano, cet onglet peut etre masqué)
- Compilation des résultats (a la fin de l’execution des requetes, le code VBA va renvoyer vers cet onglet où il est possible de faire des tableaux de compilation des resultats en faisant référence aux données dans les onglets et en pouvant faire rapidement des calculs de ratio)
Un fichier Excel « Démo » est telechargeable ici (avec le code VBA accessible) (le fichier Excel est mis dans un fichier compressé extractable avec 7-zip) :
Pour utiliser ce fichier Excel, avant d’executer les requêtes, il est necessaire de :
- Renseigner la Clé API de votre compte Piano (dans l’onglet Aide_config, renseigner les valeurs pour « Access Key » et « Secret Key ») (ces valeurs peuvent être créées dans Piano Analytics en allant sur votre page Profil)
- Renseigner le tableau des requêtes selon vos besoins (onglet Parametrage des requêtes)
- Renseigner les dates de début et fin pour les requêtes (onglet Execution des requetes) (avant de cliquer sur le bouton « Executer les requetes »)
Le fichier Excel (et son code VBA) est mis à disposition librement et gratuitement à la communauté (en contrepartie des documentations et solutions que la communauté met egalement à disposition et qui m’ont été utiles).
Pour + d’infos :