Fusion de requetes

Bonjour,

Ci-joint un fichier T44 avec comme source de données 2 tableaux ; un tableau avec une liste de comptes de montants et de dates, et le 2nd tableau avec une plage de date et un pourcentage.

Le résultat attendu dans power query est une fusion des requêtes afin que le pourcentage qui s'affiche dans le tableau final se fasse en fonction de la plage de date correspondante.

En cas d'absence de plage de date correspondante, il faudrait indiquer le taux de la dernière plage de date (exemple pour la ligne rouge)

Le résultat attendu se présente dans le tableau vert,

je vous remercie pour votre aide.

4t44.xlsx (17.85 Ko)

Bonjour,

De passage, donc pas le temps de m'y coller.

En attendant que quelqu'un passe par là, tu peux essayer toi-même la solution qui passe par une jointure pleine externe, puis un remplir vers le bas de la colonne TAUX (après un tri croissant des dates).

A+

Hello PIERRO1234, OOoiste,

Une proposition en PJ.

Dans ton exemple la ligne en rouge se base sur le taux du dessus qui correspond au 3 octobre 2023 dans le tableau vert. Or dans ton tableau source c'est le 3 août 2023. Donc ça explique la différence entre l'attendu et ma proposition.

@+

5t44.xlsx (20.50 Ko)

Bonjour à tous !

Une approche différente :

Bonjour JFL,

C'est gentil mais je n'ai rien compris !!!! c'est quoi "=Let" ???? ou se trouve la source des taux???? y a t il une requete masquée ????

Merci

Bonjour à tous !

Avez-vous étudié le code de la requête, via l'éditeur avancé ?

C'est l'histoire du "2 en 1"...

Les 2 requêtes sont regroupées via des fonctions (let...).

Desole je n'ai pas eu ce réflexe, Merci.

c'est possible de faire afficher les différentes étapes au niveau du parametre de la requete stp?

Bonjour à tous de nouveau !

Version 2 : Ajout d'une requête....détaillée !

Merci pour la version détaillée JFL,

Merci à Baroute78

Bonjour à tous de nouveau !

Je vous remercie de ce retour.

Hello JFL,

La méthode ci-dessous permet de faire une correspondance assez rapide en fait. J'ai bien compris l'objectif du coup mais j'avoue avoir un peu de mal à comprendre la syntaxe.

image
ExpandDates[LD] : permet d'avoir la colonne LD de l'étape ExpandDates sous forme de liste dans chaque ligne => OK ça c'est basique

Par contre, concernant le [LD = [DATE]] (donc on regarde si un des éléments de la liste = DATE) qui est ensuite mis sous forme de liste avec {[LD = [DATE]]}, j'avoue que j'ai un peu de mal là dessus

J'ai du mal à me représenter le passage à un record du coup ...

Est ce que tu peux m'éclairer là dessus ?

Merci d'avance

Edit : j'ai du mal à concevoir que de passer en liste ça permet d'obtenir le Record de la ligne concernée

Edit 2 : en fait c'est juste la syntaxe basique de sélection d'une ligne dans une table je suis bête... On précise qu'on sélectionne les records de ExpandDates si le champ LD = DATE, MyBad

image

Bonjour à tous de nouveau !

Pour le "fun", une version détaillée...plus courte :

let
    // Table des taux
    SourceT = Excel.CurrentWorkbook(){[Name="tTaux"]}[Content],
    TypeDate = Table.TransformColumnTypes(SourceT,{{"DATE2", type date}}),
    TableT=Table.Sort(TypeDate,{{"DATE2", Order.Ascending}}),

    // Table comptes
    SourceC = Excel.CurrentWorkbook(){[Name="tSource"]}[Content],
    TypeDateC = Table.TransformColumnTypes(SourceC,{{"DATE", type date}}),
    AjtTaux = Table.AddColumn(TypeDateC, "TAUX", each  try Table.SelectRows(TableT, (x)=> x[DATE2]>=[DATE])[TAUX]{0} otherwise List.Last(TableT[TAUX]), Percentage.Type)
in
    AjtTaux

Re,

Je vais y aller de la mienne, réalisé uniquement avec l'interface, donc plus facile à répliquer.

7pq-interface.xlsx (21.32 Ko)

A+

Rechercher des sujets similaires à "fusion requetes"