Accueil – Le CFO masqué › Forums › Power Query › historique et cumul
- Ce sujet contient 7 réponses, 3 participants et a été mis à jour pour la dernière fois par
Daniel, le il y a 1 année.
-
AuteurMessages
-
9 janvier 2024 à 10 h 31 min #136035
hboisteau
ParticipantBonjour,
je suis bloqué sur un développement avec power query, en effet je cherche a faire un cumul mensuel en partant de résultats journaliers et en même temps faire un cumul historique d’une numéro de de série depuis sa mise en place.
Je joint un fichier Excel avec un tableau avant traitement et un autre tableau avec la finalité voulu.
Je vous remercie pour toute l’aide que vous pourrez m’apporter.
HB
Attachments:
You must be logged in to view attached files.10 janvier 2024 à 12 h 10 min #136067Antoine Fixary
ParticipantBonjour,
ajouter une colonne personnalisée pour avoir un champ “Année-Mois” et regrouper par “Année_Mois” / N° Série.
Voir fichier joint en PJ.
Le résultat obtenu ne correspond pas au niveau des valeurs (si ça correspond à vos attentes, vous auriez pu, à minima, créer un exemple valable). Si ce n’est pas bon, précisez votre demande SVP.
Cordialement.
Attachments:
You must be logged in to view attached files.10 janvier 2024 à 15 h 08 min #136073hboisteau
ParticipantMerci beaucoup Antoine,
En premier lieu excusez-moi pour les imperfections, mais vous avez compris le sens.
Le fichier fonction super, mais je souhaiterais le cumule de la colonne Historique de N° série, en janvier il y a trois lignes et en février 4 lignes, ce qui devrait faire un total de 7.
En faite je souhaiterais compter le nombres de jours de ce numéro de série, de façon a ce que si ce numéro de série est en fonction tout le mois de janvier 2024 alors c’est 31 et si nous l’utilisons encore en février (et ce tout le mois 29 jours) alors a la fin du mois de février nous serons à 60 jours d’utilisation.
Encore un grand merci, pour vos conseils
HB
11 janvier 2024 à 1 h 58 min #136076Antoine Fixary
ParticipantBonjour,
pourriez-vous donner un exmple chiffré (mettre àjour votre fichier avec un exemple de ce que vous voulez cululer).
Merci, Antoine
11 janvier 2024 à 15 h 09 min #136097hboisteau
ParticipantMerci beaucoup Antoine,
j’ai copier le fichier avec le cumul désiré.
Encore un grand merci,
HB
Attachments:
You must be logged in to view attached files.21 janvier 2024 à 10 h 19 min #136637hboisteau
ParticipantBonjour le forum,
j’essaye de faire remonter la demande d’aide.
Merci par avance,
HB
23 janvier 2024 à 3 h 43 min #136721Antoine Fixary
ParticipantBonjour,
je n’avais pas le temps de jeter un oeil avant.
Malheureusement, mes compétences en PowerQuery ne me permettent pas de vous proposer une solution.
Cordialement
23 janvier 2024 à 19 h 32 min #136778Daniel
ParticipantBonjour hboisteau, le Forum,
1 – Créer une fonction qui servira à faire le calcul demandé comme suit
(valeurs as list, groupe as list) as list =>let
GoupRunningTotalList = List.Generate
(
()=> [ GoupRunningTotal = valeurs{0}, i = 0 ],each [i] < List.Count(valeurs),
each try
if groupe{[i]} = groupe{[i] + 1}
then [GoupRunningTotal = [GoupRunningTotal] + valeurs{[i] + 1}, i = [i] + 1]
else [GoupRunningTotal = valeurs{[i] + 1}, i = [i] + 1]otherwise [i = [i] + 1]
,
each [GoupRunningTotal]
)
in
GoupRunningTotalList2 – Requête des données
let
Source = Excel.CurrentWorkbook(){[Name=”Tableau1″]}[Content],
ModificationTypeDonnees = Table.TransformColumnTypes(Source,{{“date”, type date}, {“N° de serie”, type text}, {“resultat1”, Int64.Type}, {“resultat2”, Int64.Type}}),
AjoutColAnneeMois = Table.AddColumn(ModificationTypeDonnees, “Période”, each Date.ToText([date],”yyyy-MM”)),
GroupAnneeMoisSerie = Table.Group(AjoutColAnneeMois, {“Période”, “N° de serie”}, {{“Historique du numéro de série”, each Table.RowCount(_), Int64.Type}, {“Resultat1”, each List.Sum([resultat1]), type nullable number}, {“Resultat2”, each List.Sum([resultat2]), type nullable number}}),
TriSerieAnneeMois = Table.Sort(GroupAnneeMoisSerie,{{“N° de serie”, Order.Ascending}, {“Période”, Order.Ascending}}),BufferedValues = List.Buffer(TriSerieAnneeMois[#”Historique du numéro de série”]),
BufferedGroup = List.Buffer(TriSerieAnneeMois[#”N° de serie”]),RT = Table.FromColumns(
{
TriSerieAnneeMois[Période],TriSerieAnneeMois[#”N° de serie”], TriSerieAnneeMois[#”Historique du numéro de série”],
fxGroupedRunningTotal(BufferedValues, BufferedGroup),TriSerieAnneeMois[Resultat1],TriSerieAnneeMois[Resultat2]
},
{
“Période”,
“N° de série”,
“Historique du numéro de série”,
“Nombre apparition numéro de série”,
“Résultat 1”,
“Résultat 2”
}
),
TriSurPériode = Table.Sort(RT,{{“Période”, Order.Ascending}})in TriSurPériode
Reste un souci de tri sur le numéro de série qui ne donne pas exactement le même résultat que celui attendu.
Cordialement
DanielAttachments:
You must be logged in to view attached files. -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.