La consolidation avec Power Query

Power Query : consolidation de fichiers

Grâce à Power Query, les concaténations de fichiers deviennent une opération très facile, y compris s’ils ont à l'origine des formats différents. Développons deux exemples pour montrer la puissance de l’outil. Évidemment, en pratique, les fichiers traités ne sont pas minuscules comme ceux que nous utiliserons ici.

Précision sémantique : par concaténation, on entend l’ajout de lignes d’une requête au-dessous de celles d’une autre requête. Les ajouts de colonnes relèvent de la fusion de fichiers.

 

Concaténation simple

Soit deux jeux de données de même structure : les entrées du personnel de janvier et celles de février. Ils n’ont chacun que deux colonnes : des dates et des noms.

D’abord nous les importons. Power Query a compris que les premières lignes étaient des intitulés.

janvier

février

Nous souhaitons que ces deux requêtes soient concaténées dans une nouvelle (c’est l’équivalent de l’instruction UNION de SQL). Tout se passe dans le pavé Combiner.

ajout de requête

Ajouter des requêtes puis Ajouter les requêtes comme étant nouvelles.

Résultat :

concaténation

Si l’on clique sur Ajouter des requêtes au lieu d’Ajouter les requêtes comme étant nouvelles, on obtient la même chose mais l’une des deux requêtes sources est modifiée (travail moins propre !).

concaténation d'écrans

 

Consolidation

Importons à présent deux requêtes de ventes mensuelles (référence, quantité, prix unitaire, total). Nous souhaitons obtenir les ventes sur deux mois. Il est possible qu’un prix unitaire ait évolué, auquel cas la référence tiendra sur deux lignes.

Les données de janvier, telles qu’elles apparaissent à l’origine sur Excel :

janvier

Février :

février

Notez au passage qu’elles ne sont même pas présentées sous forme de « tableau », mais ce sont les seules données qui figurent sur leurs feuilles de calcul respectives. Power Query comprend parfaitement ce qu'il doit importer.

Remarquez aussi les lignes de total qui pourraient polluer notre travail. Il faut les retirer aussitôt après l’importation. La procédure est très simple. Il suffit de se positionner sur l’une des trois premières colonnes et de filtrer pour éliminer les valeurs null.

filtrage

Ensuite, comme ci-dessus, ajoutons les requêtes « comme étant nouvelles ». Nous sommes à présent à ce stade :

tableau concaténé

Clic sur Regrouper par :

bouton regrouper par

Comme nous aurons plus d’une colonne de regroupement (en l’occurrence la référence et le prix unitaire), nous choisissons le menu Avancé. De plus, il y aura deux nouvelles colonnes : la quantité totale, qui est la somme des quantités de janvier et février, et le chiffre d’affaires total.

menu regrouper par

Nous obtenons bien le résultat attendu :

résultat final

Bien sûr, nos exemples se sont limités à deux requêtes sources, mais il est tout à fait possible d’en agréger beaucoup plus (sans être obligé d’écrire du code en M).

 

empilement