Power Query: Faut-il renommer les étapes?
par
, 13/10/2021 à 08h00 (1885 Affichages)
Renommer les étapes dans Power Query allège la lecture et la saisie du script, et rend la requête plus explicite
Salut.
Lorsque l'on crée une solution Power Query, on remarque que l'outil nomme les étapes du script. On trouve ainsi souvent en première étape le nom Source, puis Type modifié, etc, au fur et à mesure de la construction de la requête.
C'est très chouette, et si l'on regarde le script, via Accueil, Editeur avancé, on remarque que chaque étape se sert de la précédente
Code PowerQuery : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 let Source = Excel.CurrentWorkbook(){[Name="Commandes"]}[Content], #"Type modifié" = Table.TransformColumnTypes(Source,{{"A", type any}, {"Date", type datetime}, {"Type", type text}, {"Article", type text}, {"E", type any}, {"F", type any}, {"G", type any}}), #"Lignes filtrées" = Table.SelectRows(#"Type modifié", each ([Article] = "Rasoir")), #"Lignes groupées" = Table.Group(#"Lignes filtrées", {"Type"}, {{"Nombre", each Table.RowCount(_), Int64.Type}}) in #"Lignes groupées"
Ainsi,
- l'étape #"Type modifié" sert de l'étape Source;
- l'étape #"Lignes filtrées" se sert de l'étape #"Type modifié";
- l'étape #"Lignes groupées" se sert de #"Lignes filtrées";
- ...
Dur dur, les noms d'étape. A part Source, il faut les préfixer de # et les mettre entre guillemets? C'est ch**** ce truc => Lourd à lire, long à saisir, faut pas se gourrer, en plus... Z'auraient pas pu faire plus simple?
Lorsque j'ai créé mon premier script "à la main" (que j'ai pondu du code), je croyais naïvement que les étapes devaient être nommées #"Mon étape" puisque c'est ainsi que je les voyais écrites par le QBE (Query By Example, soit l'interface "clic and go" de Power Query), et je m'échinais donc à écrire mon code en fonction de cela. Puis j'ai compris pourquoi Source n'était pas écrit #"Source"...
Et vous, vous avez compris?
Si on regarde les noms d'étape cités plus haut, on s'aperçoit que Source est le seul nom d'étape sans espaces... Wouah... Est-ce dire que si je renommais mes étapes sans espaces, je pourrais me passer de # et des guillemets? Et si on essayait?
Code PowerQuery : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 let Source = Excel.CurrentWorkbook(){[Name="Commandes"]}[Content], AdaptationTypes = Table.TransformColumnTypes(Source,{{"A", type any}, {"Date", type datetime}, {"Type", type text}, {"Article", type text}, {"E", type any}, {"F", type any}, {"G", type any}}), FiltreSurRasoir = Table.SelectRows(AdaptationTypes, each ([Article] = "Rasoir")), GroupementSurType = Table.Group(FiltreSurRasoir, {"Type"}, {{"Nombre", each Table.RowCount(_), Int64.Type}}) in GroupementSurType
YEAH... En plus d'être plus compréhensible, mon script est plus lisible, et lorsque je dois intervenir dans le script, je peux donc me passer de ces décorations à coup de # et de guillemets...
Pour renommer les étapes, sélectionnez l'étape puis F2, raccourci habituel Windows pour l'édition.
Bon travail avec Power Query...