Partage des requêtes

Chapitre parent Chapitre précédent Chapitre suivant

Copie d'un classeur Excel à un autre classeur Excel

Les requêtes créées par Power Query sont enregistrées dans le classeur Excel où elles ont été créées. Mais elles peuvent facilement être copiées d'un classeur à un autre :


Copie d'un environnement à un autre

Il n'existe pas d'option permettant d'exporter une requête pour l'importer ensuite sur un autre PC.

Mais on a vu au chapitre Historique des étapes appliquées que derrière toute requête se cache en fait un script en langage M. Et ce script est « portable ».

Si vous souhaitez transférer un script d'un environnement à un autre, vous pouvez donc tout à fait copier le code source de ce script depuis la fenêtre Editeur avancé de Power Query, l'envoyer par mail à une autre personne qui pourra alors l'intégrer dans une requête.

Exemple de script :

let

    Source = MySQL.Database("localhost", "EntrepotLD", [ReturnSingleDatabase=true]),

    entrepotld_pay_bulletins = Source{[Schema="entrepotld",Item="pay_bulletins"]}[Data],

    #"Autres colonnes supprimées" = Table.SelectColumns(entrepotld_pay_bulletins,{"Code société", "Matricule", "Année", "Mois", "Nom Prénom", "Sexe", "Age", "Ancienneté", "Code établissement", "Etablissement", "Code service", "Service", "Code convention collective", "Type de contrat", "Date d'entrée", "Date d'ancienneté", "Statut catégoriel", "Statut AGRIC-ARRCO", "Code profil rubrique", "Profil rubrique", "Code profil cotisation", "Profil cotisation", "Taux temps partiel", "Salaire brut", "Salaire de base", "Heures sup.", "Primes", "Absences...", "Net imposable", "Net à payer", "Charges patronales", "Charges totales", "Horaire payé"}),

    #"Colonnes renommées" = Table.RenameColumns(#"Autres colonnes supprimées",{{"Code société", "Société"}}),

    #"Colonnes fusionnées" = Table.CombineColumns(#"Colonnes renommées",{"Code établissement", "Etablissement"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Etablissement.1"),

    #"Colonnes renommées1" = Table.RenameColumns(#"Colonnes fusionnées",{{"Etablissement.1", "Etablissement"}}),

    #"Colonnes fusionnées1" = Table.CombineColumns(#"Colonnes renommées1",{"Code service", "Service"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Fusionné"),

    #"Colonnes renommées2" = Table.RenameColumns(#"Colonnes fusionnées1",{{"Fusionné", "Service"}}),

    #"Colonnes fusionnées2" = Table.CombineColumns(#"Colonnes renommées2",{"Code profil rubrique", "Profil rubrique"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Fusionné"),

    #"Colonnes renommées3" = Table.RenameColumns(#"Colonnes fusionnées2",{{"Fusionné", "Profil rubrique"}}),

    #"Colonnes fusionnées3" = Table.CombineColumns(#"Colonnes renommées3",{"Code profil cotisation", "Profil cotisation"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Fusionné"),

    #"Colonnes renommées4" = Table.RenameColumns(#"Colonnes fusionnées3",{{"Fusionné", "Profil cotisation"}}),

    #"Colonne conditionnelle ajoutée" = Table.AddColumn(#"Colonnes renommées4", "Tranche d'âge", each if [Age] <= 20 then "< 20" else if [Age] <= 30 then "< 30" else if [Age] <= 40 then "< 40" else if [Age] <= 50 then "< 50" else "> 50"),

    #"Personnalisée ajoutée" = Table.AddColumn(#"Colonne conditionnelle ajoutée", "Personnalisé", each [Année] & " " & [Mois]),

    #"Colonnes renommées5" = Table.RenameColumns(#"Personnalisée ajoutée",{{"Personnalisé", "Année mois"}})

in

    #"Colonnes renommées5"


 Il faudra simplement corriger si nécessaire les données apparaissant en orange ci-dessus :


Chapitre précédent Chapitre précédent Chapitre parent Chapitre parent Chapitre suivant Chapitre suivant