IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

POWER Discussion :

PQ - Regroupement étapes


Sujet :

POWER

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 92
    Points
    92
    Par défaut PQ - Regroupement étapes
    Bonsoir à tous,

    Je me posais la question de savoir s'il était possible de regrouper, pour simplification, les étapes Regroupement par catégorie & Personnalisé1 de la requête Depart1 du fichier joint.

    S'il y a d'autres simplifications, je suis preneur.
    D'avance merci pour vos lumières.

    Cordialement.

    requetes-classement.xlsx

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    let
        Source = Excel.CurrentWorkbook(){[Name="Depart1"]}[Content],
        #"Autres colonnes supprimées" = Table.SelectColumns(Source,{"Nom", "Club", "Catégorie", "Score", "10+", "10", "9", "Code"}),
        #"Lignes filtrées" = Table.SelectRows(#"Autres colonnes supprimées", each ([Nom] <> "" and [Nom] <> " ")),
        #"Regroupement par catégorie" = Table.Group(#"Lignes filtrées", {"Catégorie"}, {{"Partition", each Table.AddIndexColumn(_,"Index",1,1), type table}}),
        Personnalisé1 = Table.AddColumn(#"Regroupement par catégorie", "P1", each Table.AddIndexColumn(Table.Sort([Partition],{{"Score",Order.Descending}}),"Rang",1,1)),
        #"P1 développé" = Table.ExpandTableColumn(Personnalisé1, "P1", {"Nom", "Club", "Score", "10+", "10", "9", "Code", "Index", "Rang"}, {"Nom", "Club", "Score", "10+", "10", "9", "Code", "Index", "Rang"}),
        #"Colonnes supprimées" = Table.RemoveColumns(#"P1 développé",{"Partition"}),
        #"Requête ajoutée" = Table.Combine({#"Colonnes supprimées", Catégories}),
        #"Lignes triées1" = Table.Sort(#"Requête ajoutée",{{"Code", Order.Ascending}, {"Rang", Order.Ascending}}),
        #"Colonne conditionnelle ajoutée" = Table.AddColumn(#"Lignes triées1", "Catégorie ", each if [Rang] = 0 then [Catégorie] else null),
        #"Colonnes permutées" = Table.ReorderColumns(#"Colonne conditionnelle ajoutée",{"Catégorie ", "Catégorie", "Nom", "Club", "Score", "10+", "10", "9", "Code", "Index", "Rang"}),
        #"Autres colonnes supprimées1" = Table.SelectColumns(#"Colonnes permutées",{"Catégorie ", "Nom", "Club", "Score", "10+", "10", "9", "Rang"}),
        #"Type modifié" = Table.TransformColumnTypes(#"Autres colonnes supprimées1",{{"Catégorie ", type text}, {"Nom", type text}, {"Club", type text}, {"Score", Int64.Type}, {"10+", Int64.Type}, {"10", Int64.Type}, {"9", Int64.Type}, {"Rang", Int64.Type}})
    in
        #"Type modifié"

  2. #2
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 413
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 413
    Points : 16 255
    Points
    16 255
    Par défaut
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    let
        Source = Excel.CurrentWorkbook(){[Name="Depart1"]}[Content],
        #"Autres colonnes supprimées" = Table.SelectColumns(Source,{"Nom", "Club", "Catégorie", "Score", "10+", "10", "9", "Code"}),
        #"Lignes filtrées" = Table.SelectRows(#"Autres colonnes supprimées", each ([Nom] <> "" and [Nom] <> " ")),
        #"Regroupement par catégorie" = Table.Group(#"Lignes filtrées", {"Catégorie"}, {{"Partition", each Table.AddIndexColumn(_,"Rang",1,1), type table}}),
        #"Partition développé" = Table.ExpandTableColumn(#"Regroupement par catégorie", "Partition", {"Nom", "Club", "Score", "10+", "10", "9", "Code",  "Rang"}, {"Nom", "Club", "Score", "10+", "10", "9", "Code", "Rang"}),
        #"Requête ajoutée" = Table.Combine({#"Partition développé", Catégories}),
        #"Lignes triées1" = Table.Sort(#"Requête ajoutée",{{"Code", Order.Ascending}, {"Rang", Order.Ascending}}),
        #"Valeur remplacée" = Table.ReplaceValue(#"Lignes triées1",each [Catégorie],each if [Rang]=0 then [Catégorie] else null,Replacer.ReplaceValue,{"Catégorie"}),
        #"Autres colonnes supprimées1" = Table.SelectColumns(#"Valeur remplacée",{"Catégorie", "Nom", "Club", "Score", "10+", "10", "9", "Rang"}),
        #"Type modifié" = Table.TransformColumnTypes(#"Autres colonnes supprimées1",{{"Catégorie", type text}, {"Nom", type text}, {"Club", type text}, {"Score", Int64.Type}, {"10+", Int64.Type}, {"10", Int64.Type}, {"9", Int64.Type}, {"Rang", Int64.Type}})
    in
        #"Type modifié"
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 92
    Points
    92
    Par défaut
    Bonsoir Chris,

    Merci pour la proposition, mais le classement par catégorie ne se fait plus. Voir la catégorie S1HCL par exemple.

    Cordialement.

  4. #4
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 413
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 413
    Points : 16 255
    Points
    16 255
    Par défaut
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    let
        Source = Excel.CurrentWorkbook(){[Name="Depart1"]}[Content],
        #"Autres colonnes supprimées" = Table.SelectColumns(Source,{"Nom", "Club", "Catégorie", "Score", "10+", "10", "9", "Code"}),
        #"Lignes filtrées" = Table.SelectRows(#"Autres colonnes supprimées", each ([Nom] <> "" and [Nom] <> " ")),
        #"Lignes triées" = Table.Sort(#"Lignes filtrées",{{"Catégorie", Order.Ascending}, {"Score", Order.Descending}}),
        #"Index ajouté" = Table.AddIndexColumn(#"Lignes triées", "Index", 0, 1, Int64.Type),
        #"Regroupement par catégorie" = Table.Group(#"Index ajouté", {"Catégorie"}, {{"Partition", each Table.AddIndexColumn(_,"Rang",1,1), type table}}),
        #"Partition développé" = Table.ExpandTableColumn(#"Regroupement par catégorie", "Partition", {"Nom", "Club", "Score", "10+", "10", "9", "Code", "Index", "Rang"}, {"Nom", "Club", "Score", "10+", "10", "9", "Code", "Index", "Rang"}),
        #"Requête ajoutée" = Table.Combine({#"Partition développé", Catégories}),
        #"Lignes triées1" = Table.Sort(#"Requête ajoutée",{{"Code", Order.Ascending}, {"Rang", Order.Ascending}, {"Index", Order.Ascending}}),
        #"Valeur remplacée" = Table.ReplaceValue(#"Lignes triées1",each [Catégorie],each if [Rang]=0 then [Catégorie] else null,Replacer.ReplaceValue,{"Catégorie"}),
        #"Autres colonnes supprimées1" = Table.SelectColumns(#"Valeur remplacée",{"Catégorie", "Nom", "Club", "Score", "10+", "10", "9", "Rang"}),
        #"Type modifié" = Table.TransformColumnTypes(#"Autres colonnes supprimées1",{{"Catégorie", type text}, {"Nom", type text}, {"Club", type text}, {"Score", Int64.Type}, {"10+", Int64.Type}, {"10", Int64.Type}, {"9", Int64.Type}, {"Rang", Int64.Type}})
    in
        #"Type modifié"
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 92
    Points
    92
    Par défaut
    Bonsoir Chris,

    Merci pour la requête, cette façon de faire me convient tout à fait.
    Bonne continuation,
    Cordialement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Regroupement d'enregistrements en ASP/SQL Server
    Par Matlight dans le forum ASP
    Réponses: 3
    Dernier message: 02/04/2004, 13h31
  2. Comment regrouper les 3requêtes SQL?
    Par SkyDev dans le forum Langage SQL
    Réponses: 16
    Dernier message: 06/03/2004, 13h02
  3. Regroupement par mois
    Par fplanglois dans le forum SQL
    Réponses: 7
    Dernier message: 29/07/2003, 16h32
  4. Regrouper 3 requêtes dans une seule
    Par LadyArwen dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/06/2003, 09h32
  5. regrouper deux tables
    Par Shabata dans le forum Langage SQL
    Réponses: 4
    Dernier message: 19/05/2003, 15h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo