Les jointures avec Power Query

Power Query : fusion de requêtes

Power Query permet plusieurs types d’opération sur les fichiers, notamment des concaténations (par exemple ajouter les données de février au-dessous de celles de janvier) mais aussi des comparaisons. Ces dernières nécessitent des fusions. C’est ce que nous verrons ici en nous appuyant sur un exemple simple.

 

Fusion

Soit deux fichiers Excel qui présentent des ventes mensuelles : référence de l’article, quantité, prix unitaire et prix total. Voici les données de janvier puis de février, issues de leurs feuilles de calcul respectives :

janvier

février

Le but de l’exercice est de détecter les augmentations de prix. Attention, le mode d’emploi qui suit n’est valide que parce qu’un prix change d’un mois sur l’autre ; si dans un fichier il existait deux lignes pour une même référence, c’est-à-dire si le prix variait en cours de mois, il faudrait d’abord retraiter la requête source (en indiquant par exemple un prix moyen).

Donc, à partir des deux fichiers de ventes mensuelles, il nous faut identifier les références présentes dans les deux mois, détecter celles dont le prix unitaire a changé et les mettre en exergue, par exemple en cochant une colonne ajoutée à droite.

Importons les deux requêtes en éliminant les lignes de total (voir la consolidation de fichiers).

Ensuite, lançons la fusion. C’est l’équivalent d’un JOIN en SQL. On sélectionne la requête de janvier puis, dans l’onglet Accueil, groupe Combiner puis Fusionner des requêtes (éventuellement comme nouvelle). La deuxième table est février. Il faut sélectionner les colonnes Réf. (en vert ci-dessous) pour ne garder qu’une ligne par référence.

fusionner

On obtient cette requête :

colonne supplémentaire

Sur février, il ne faut conserver que le prix unitaire. Cliquons sur la petite icône à droite de l’en-tête de colonne et décochons les colonnes inutiles :

menu

On obtient ce résultat, qui n’est pas encore satisfaisant si les données sont très nombreuses.

tableau intermédiaire

Pour un résultat plus propre, on peut changer les intitulés des colonnes de prix (après un clic droit dans les en-têtes).

travail sur ordi

 

Ajout d’une colonne

Une façon de mettre en valeur les lignes où existe un changement de prix s’appuie sur un ajout de colonne.

Par exemple, notons X chaque fois qu’un prix a changé. Ajouter une colonne puis Colonne conditionnelle.

colonne conditionnelle

La suite est assez intuitive…

colonne conditionnelle

Résultat après suppression de colonnes inutiles) :

suppression colonnes

Notez que nous aurions aussi pu ajouter une Colonne personnalisée qui aurait montré la différence de prix (là aussi, la procédure est intuitive).

différences de prix

 

Enregistrement dans Excel

Pour enregistrer un tableau de Power Query dans une feuille de calcul, onglet Accueil, bouton Fermer et charger (en haut à gauche).

On peut choisir l’emplacement : nouvelle feuille Excel, feuille existante avec sélection de la cellule de départ, chargement dans le modèle de données uniquement ou création d’une connexion sans tableau visible.

Le tableau créé n’est pas une copie statique puisqu’il est lié à la requête. Si l’on modifie la source, on met à jour le tableau en cliquant sur le bouton Actualiser tout. Et si l’on ferme Power Query sans charger, la requête existe toujours (Données puis Requêtes et connexions) mais aucun tableau n’apparaît dans Excel.

 

ajout de colonne