Forum Replies Created

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • in reply to: Agréger des données Excel multiples #149041
    ludo.regnier
    Participant

    Bonjour
    Pourrais-tu joindre un exemple des données dont tu disposes et un autre du résultat attendu ?

    in reply to: Suppression incomplète des doublons #148666
    ludo.regnier
    Participant

    Sinon il y a L’attitude Provence avec 2 t et latitude Provence avec un seul t

    in reply to: Help calcul heure de nuit #148350
    ludo.regnier
    Participant

    bonsoir
    j’ai posé la question à ChapGPT, voici sa réponse

    Attachments:
    You must be logged in to view attached files.
    ludo.regnier
    Participant

    Erratum : voici le bon fichier (avec les requêtes !)

    Attachments:
    You must be logged in to view attached files.
    in reply to: Formule conditionnelle contrat de travail #141931
    ludo.regnier
    Participant

    Erratum : tu l’auras compris, il faut filtrer sur la colonne “date de sortie” bien sur et pas directement sur “sortie” qui est la colonne du resultat

    in reply to: Formule conditionnelle contrat de travail #141930
    ludo.regnier
    Participant

    Bonjour
    Je ne connais pas bien power query mais si cela peut t’aider à avancer (je vois que tu n’as pas encore reçu d’autres réponses), voici comment je procéderai : si ton fichier est exactement celui que tu présentes je ferai simplement un “remplir” “vers le haut” dans la colonne sortie (ou après avoir dupliqué la colonne sortie). Si ton fichier peut se présenter différemment et pour éviter les problèmes potentiels d’homonymie des salarié je conseillerai d’ajouter dans la table de départ un numéro d’identifiant unique par salarié (même identifiant quelque soit le contrat). Ensuite je créerai une requête à partir de la table source, supprimerai les colonnes autres que identifiant et sortie, puis filtrerai sur Sortie différent de vide. Ensuite je fusionnera la table source et la nouvelle table créée avec identifiant comme clé.
    mais il existe sans doute des solutions encore plus simples. Bon courage

    in reply to: Table. TransformColumns #129762
    ludo.regnier
    Participant

    Oui globalement en changeant d’approche (en évitant de pivoter dépivoter) je suis passé d’un temps de réponse de 19 minutes !!) à 6 minutes max. Ça devient opérationnel !

    in reply to: Table. TransformColumns #129750
    ludo.regnier
    Participant

    Bonjour
    Merci Stéphane pour cette nouvelle réponse. J’avais effectivement commencé par dépivoter mes colonnes pour travailler avec Attribut et Valeur, mais comme j’ai de nombreuses colonnes à dépivoter puis re-pivoter et environ 10000 lignes dans ma table source je me retrouvais avec des performances très mauvaises. C’est pourquoi je cherchais une solution qui m’évite de dépivoter (pensant que c’est la raison principale des mauvaises performances). Un collègue m’a aidé à adapter la formule Table.ReplaceValue en l’intégrant dans une “List.Accumulate”. Voici le résultat avec une condition si null : “si valeur en colonne A est null, remplacer par la valeur en colonne A. 1, si valeur en colonne B est null, remplacer par la valeur en colonne B. 1” etc.
    Les colonnes contenant les valeurs à remplacer sont identifiées dans la liste col_a_remplacer de la fonction, et toutes les colonnes contenant les valeurs de remplacement sont nommées comme les colonnes à remplacer plus le suffixe “. 1”.
    La formule permet de complexifier la condition en utilisant la variable b par exemple.

    List.Accumulate( col_a_remplacer, ma_table_source, (state, current) => Table.ReplaceValue=(state,0, each Record.Field(_,current & “. 1”), (a, b, c) as number => if a = null then c else a, {current}))

    Il serait également possible de remplacer la condition
    if a = null then c else a
    par
    a?? c
    Je n’ai pas essayé
    bonne journée

    in reply to: Table. TransformColumns #129695
    ludo.regnier
    Participant

    Bonjour
    Merci encore à Stéphane pour sa réponse. Je cherche maintenant à complexifier un peu ma requête :est-ce possible de rendre la colonne [M] paramétrable également ? En effet j’ai deux listes de colonnes qui fonctionnent par paire ([A] et [A. 1], [B] et [B. 1]) etc. et je souhaite faire un remplacement conditionnel : si valeur en colonne [A] <x alors [A] sinon [A] *[A. 1], si [B] <x alors [B] sinon [B] *[B. 1], si [C] <x alors [C] sinon [C] *[C. 1] etc pour l’ensemble des valeurs de la liste à transformer.

    Un grand merci par avance si vous pouvez m’aider.

    in reply to: Table. TransformColumns #128994
    ludo.regnier
    Participant

    MERCI !! C’est exactement ce que je cherchais. Et c’est effectivement plus “léger” que les each liste de liste de Table. Transform Columns. 😁 Merci encore et bonne journée

    in reply to: Ajouter jours ouvrés #124694
    ludo.regnier
    Participant

    Bonjour
    Je suis débutant ++sur power query mais la solution à laquelle je pense serait de créer une seconde table avec deux colonnes, la première contenant les jours de la semaine et la seconde les jours ouvrés correspondant (par exemple à jeudi correspond mardi ouvré ), puis croiser les deux tables pour récupérer la valeur de la seconde colonne de la seconde table.
    Sinon (et c’est pas bien de tricher !) j’ai posé votre question à ChatGPT et voici le code M proposé :let
    startDate = #table({“Date de départ”},{{“01/01/2021”}}),
    dateList = List.Dates(startDate[Date de départ], 3, #duration(1,0,0,0)),
    workDays = List.Select(dateList, each Date.IsWorkday( _ )),
    endDate = List.Last(workDays)
    in
    endDate
    Bon courage

    in reply to: Promouvoir ligne en en-tête autre que la ligne 1 et + #103814
    ludo.regnier
    Participant

    Bonjour
    Est-ce que c’est toujours la troisième ligne qui doit être promue comme en-tête ? Est ce que la seconde ligne peut être supprimée ? Si oui pourquoi ne pas supprimer la seconde ligne puis promouvoir la première ligne en en-tête. Il existe des menus qui font cela directement.

    in reply to: Agréger des colonnes variables #89705
    ludo.regnier
    Participant

    Bonjour

    Je viens de résoudre mon problème. Il me fallait créer une liste de valeurs correspondant aux occurences possibles du champ choisi en colonne, à laquelle j’associe la fonction List.Sum
    Puis passer cette liste en argument de la fonction Table.AggregateTableColumn.

    Avec les données fournies dans l’exemple la requête query ne présente pas d’intérêt : on pourrait directement utiliser la source de données pour créer un TCD qui présenterait les résultats de la même manière. En réalité mon fichier de données n’est pas homogène sur les colonnes de Niveaux. Certaines branches de l’arborescence s’arrêtent au niveau 2, d’autres vont jusqu’au niveau 8. Dans ce cas un TCD présentera des lignes “(vide)” du niveau 3 jusqu’au niveau 8 ce qui ne présente pas d’intérêt et alourdit la lecture. Si je masque les champs “(vide)” à partir du niveau 3, je ne vois plus les détails pour les cas où je dois descendre au niveau 8.
    La requête Query évite donc ce pb.

    Si cela intéresse qqn, éventuellement pour optimiser les requêtes voici le fichier opérationnel.
    Merci et bonne journée

    Attachments:
    You must be logged in to view attached files.
    in reply to: Agréger des colonnes variables #89671
    ludo.regnier
    Participant

    Bonjour Christian et merci pour ta réponse.
    Je suis conscient que ma question n’est pas limpide. Je ne peux pas livrer le fichier pour des questions de confidentialité, mais j’ai reproduit le principe recherché, dans le fichier joint.
    L’utilisateur doit choisir dans une liste déroulante (onglet Paramètres) un champ qui sera affiché en colonne et un autre qui sera consolidé.
    Le résultat attendu doit être présenté conformément à ce qui figure dans l’onglet Résultat, c’est à dire de manière arborescente.
    Je boque à l’étape Nombre Agrégé de l arequête Résultat, parce que je ne sais pas écrire le code avec des champs variables (si l’utilisateur fait un autre choix de champs que ceux que j’ai utilisés pour paramétrer la requête actuellement).
    Merci beaucoup si qqn peut m’aider.
    Bien à vous

    Attachments:
    You must be logged in to view attached files.
Viewing 14 posts - 1 through 14 (of 14 total)