IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Pierre Fauconnier

Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes

Noter ce billet
par , 04/11/2021 à 08h00 (3359 Affichages)
Power Query permet de créer des requêtes au moyen de scripts découpés en étapes


Salut.

Dans cette catégorie (https://www.developpez.net/forums/bl...categoryid=612), je crée des billets formatifs que je veux brefs et pratiques. Ils permettront une prise en mains en douceur du formidable outil qu'est Power Query. Nous apprendrons bien sûr à manipuler Power Query par l'interface, et donc la souris, mais nous irons régulièrement voir le script et le modifier pour donner encore plus de puissance et de souplesse aux solutions Power Query que nous mettons en place.


Leçon 3: L'interface Power Query en quelques mots

En préambule, on notera qu'il n'y a qu'une seule solution Power Query par classeur, englobant toutes les requêtes mises à disposition du classeur. Cela signifie que dès que vous accédez à la fenêtre de Power Query, vous pouvez agir sur toutes les requêtes disponibles.


C'est quoi, Power Query

Après un rapide coup d'oeil sur la façon d'amener des données dans une solution Power Query, il convient de préciser ce qu'est Power Query. "Ma" définition de l'outil est la suivante:
Power Query est un outil d'agrégation et de préparation de données pour l'analyse avec Excel ou Power BI
Cet outil se base sur une approche "SQL" des données, manipulées au travers de scripts qui sont enregistrés soit par l'interface (on parle alors de QBE, Query by Example) soit par l'écriture de script dans l'éditeur avancé. Souvent, les requêtes seront créées selon un mix des deux approches.

Les scripts sont réalisés par étapes successives, chaque étape mettant les données à disposition de la suivante. Je reviendrai sur cette notion très importante et parfois déroutante pour l'excellien, notamment lorsque nous créerons des colonnes temporaires pour la préparation des données.

La fenêtre de Power Query

La fenêtre de Power Query est une fenêtre modale. Cela signifie que lorsqu'elle est ouverte, elle bloque l'instance Excel ouverte et vous ne pouvez plus accéder au classeur. Il faudra fermer la fenêtre de Power Query en enregistrant éventuellement les modifications apportées aux requêtes pour récupérer l'accès à l'instance Excel.

Comment accéder à Power Query?

On accède à Power Query de différentes manières:
  • Acquisition de données externes (voir leçon 1);
  • Création d'une requête basée sur des données du classeur (voir leçon 2);
  • Double-clic ou "clic droit modifier" sur une requête existante du classeur lorsque la fenêtre des requêtes est visible;
  • Création d'une requête vide via le ruban Données.


Nom : 2021-11-03_203613.png
Affichages : 1138
Taille : 152,6 Ko


Les trois volets de la fenêtre

L'interface Power Query est constitué de 3 panneaux, en plus bien entendu du ruban et de la barre d'état:
  1. Les requêtes et ressources;
  2. Le résultat de la requête active à l'étape active;
  3. Les étapes de la requête active.


Comme pour les autres applications Office, le menu Fichier à gauche du ruban permet d'accéder aux options de l'outil.


Les requêtes et ressources

Le panneau de gauche liste les requêtes et ressources disponibles au sein de la solution Power Query:
  • Les requêtes sont les "tables de données" disponibles dans Power Query et se présentent comme une feuille Excel;
  • Les fonctions personnalisées (que nous aborderons dans un prochain billet) constituent une des autres ressources d'une solution Power Query;
  • Les paramètres sont également repris dans les ressources et sont eux aussi listés dans le panneau de gauche.


Ces ressources pourront, sous certaines conditions, être utilisées pour traiter et modifier nos requêtes.

Le clic droit sur une ressource permet de la gérer: renommage, propriétés, copie, ... Certaines manipulations telles que la duplication, la copie ou la référence d'une requête seront vues dans une prochaine leçon. Notons le renommage (étape importante, accessible également par F2) et les propriétés d'une requête, certes limitées mais qui permettent de placer une description explicative de la requête.

Nom : 2021-11-03_183345.png
Affichages : 1052
Taille : 8,7 Ko


Les étapes de la requête

Chaque étape d'une requête représente un traitement des données et, sauf pour la première étape d'une requête, s'appuie sur le résultat de la précédente. Cette notion est importante à garder à l'esprit et l'on peut se représenter les étapes comme étant empilées les unes sur les autres, de sorte que la modification d'une étape autre que la dernière risque de rendre les suivantes caduques. Souvent, la modification d'une étape imposera de "dépiler" les étapes qui la suivent, ce qui revient à les supprimer. Nous aborderons cette notion par la suite pour envisager des manipulations moins destructrices en modifiant directement le script, par exemple.

Lorsque les étapes sont créées par l'interface, Power Query leur attribue un nom qu'il sera souvent intéressant de renommer.

Dans le panneau des étapes, on visualisera les étapes de la ressource active dans le panneau des ressources.

Nom : 2021-11-03_184637.png
Affichages : 1101
Taille : 6,0 Ko


Le résultat de la requête

Au milieu, nous trouvons le résultat de la requête active après l'exécution de l'étape active. Nous pouvons ainsi visualiser le résultat de la requête à chaque étape de son exécution. On remarquera le symbole du type de données des colonnes sur lequel nous reviendrons dès la prochaine leçon. On peut voir également, au dessus de la fenêtre de résultat, la barre de formule qui permet de visualiser ou de modifier le script de l'étape active.

Nom : 2021-11-03_185020.png
Affichages : 1071
Taille : 51,6 Ko


Voici les résultats de la requête à différentes étapes

Nom : 2021-11-03_185829.png
Affichages : 1081
Taille : 165,4 Ko



Le script de la requête

Les onglets Accueil et Affichage nous permettent d'accéder à l'éditeur avancé, sorte de bloc-notes grâce auquel nous pouvons modifier le script d'une requête. Perso, je l'ai placé par clic droit sur la barre d'accès rapide. Ce bloc-notes, tout comme la barre de formule, offre la saisie semi-automatique, ce qui est très pratique car Power Query est sensible à la casse (différence majuscules-minuscules)

Pièce jointe 607989

L'éditeur avancé permet de voir "ce qui a été écrit" durant la création de la requête, mais également de modifier le script, voire de le créer "from scratch". Durant le parcours formatif, nous aurons bien entendu l'occasion d'y revenir...

Nom : 2021-11-04_084545.png
Affichages : 1032
Taille : 10,7 Ko



Durant la prochaine leçon, nous nous intéresserons au typage des données.




.
.

Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Viadeo Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Twitter Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Google Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Facebook Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Digg Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Delicious Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog MySpace Envoyer le billet « Cours Power Query, leçon 3: Intreface, requêtes, scripts, étapes » dans le blog Yahoo

Commentaires

  1. Avatar de Qwazerty
    • |
    • permalink
    Salut Pierre

    Encore une nouvelle fois merci pour ce partage de connaissance. Je vais devoir utiliser "une gestion de BD" pour un projet et cette fois je vais un peu plus m’intéresse à Power Query (plutôt que d'utiliser des recordset... ).
    L'insertion de la colonne Condition me semble prometteuse, c'est une méthode que je trouve élégante et intéressante pour faciliter le tri y compris avec du paramétrage plus complexe.

    J'espère que tu trouveras le temps d'écrire la suite

    PS:
    Sur le cours n° 2, je pense qu'il manque un mot ici
    Intégration d'une plage nommée

    L'intégration d'une plage nommée est un peu plus délicate,
    Je te souhaite une bonne continuation et une bonne journée
    Qwaz