somma Colonne PQ

Non è propriamente un programma di BI, ma nelle sue versioni più recenti anche Excel può fare grandi cose!

Moderatore: Utilizzo_prof_Excel

Rispondi

Andre962
Messaggi: 6 | Topic creati
Iscritto il: mar 22 dic 2020, 19:23

somma Colonne PQ

Messaggio da Andre962 »

Ciao a tutti,
sto creando un YTD dinamico che dipende dall'input inserito in una cella.Per farlo sto usando Excel e Power query.
Sono riuscito ad eliminare i mesi che non mi servono ora però non so come sommare le colonne che mi rimangono.
Per spiegarmi meglio allego file d'esempio. Nel file ho creato un foglio chiamato Risultato in cui ho evidenziato in verde, negli intervalli della riga 9 ,le celle di sui sto lavorando
Grazie mille a chi vorrà aiutarmi

Ciao

Andre
Allegati
Nuovo Report.xlsx
(30.11 KiB) Scaricato 20 volte


Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

somma Colonne PQ

Messaggio da Andrea90 »

Ciao Andre962,

Cosa intendi con sommare le somme che ti rimangono? Riusciresti ad inserire una tabella scritta a mano di come dovrebbe essere il risultato finale?

Immagino tu stia usando un calendario diverso rispetto a quello standard visto che il mese 1 è aprile.

A presto,

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
Andre962
Messaggi: 6 | Topic creati
Iscritto il: mar 22 dic 2020, 19:23

somma Colonne PQ

Messaggio da Andre962 »

Sisi per me il mese 1 é aprile .
Intendo dire: nel caso dell'esempio allegato i dati sono stati filtrati per luglio quindi vengono riportati tutti i dati da marzo a luglio , io vorrei creare una colonna che somma la colonna marzo aprile maggio giugno e luglio.
Però questa somma deve essere dinamica.
Nel senso che se scelgo nella cella filtro maggio nella colonna mi deve comparire solo la somma di aprile e maggio. Lo stesso se nella cella di filtro metto settembre
Pa colonna in cui viene riportata la somma deve sommare aprile maggio giugno luglio agosto settembre.
Appena arrivo a casa provvedo ad allegare un file di esempio
Grazie mille come sempre
Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

somma Colonne PQ

Messaggio da Andrea90 »

Ciao Andre962,

Intanto proverei a condensare un pò di passaggi, prova ad utilizzare dentro ad una query vuota questo codice:

Codice: Seleziona tutto

let
 
    FiltroMese = Excel.CurrentWorkbook(){[Name="Filtro_colonne"]}[Content][Column1]{0},
    Origine = Table.FuzzyNestedJoin(Sales_Force, {"BU"}, Mensilizzazione_Ricavi, {"BU"}, "Mensilizzazione_Ricavi", JoinKind.LeftOuter, [IgnoreCase=true, IgnoreSpace=true]),
    #"Tabella Mensilizzazione_Ricavi espansa" = Table.ExpandTableColumn(Origine, "Mensilizzazione_Ricavi", {"aprile", "maggio", "giugno", "luglio", "agosto", "settembre", "ottobre", "novembre", "dicembre", "gennaio", "febbraio", "marzo", "Totale"}, {"aprile", "maggio", "giugno", "luglio", "agosto", "settembre", "ottobre", "novembre", "dicembre", "gennaio", "febbraio", "marzo", "Totale"}),
    #"Trasformate altre colonne tramite UnPivot" = Table.UnpivotOtherColumns(#"Tabella Mensilizzazione_Ricavi espansa", {"Pos.°", "Tipo", "Nome", "BU", "Target"}, "Data", "%"),
    #"Filtrate righe" = Table.SelectRows(#"Trasformate altre colonne tramite UnPivot", each ([Data] <> "Totale")),
    #"Modificato tipo" = Table.TransformColumnTypes(#"Filtrate righe",{{"%", Percentage.Type}}),
    #"Inserita moltiplicazione" = Table.AddColumn(#"Modificato tipo", "Valore", each [Target] * [#"%"], type number),
    #"Prefisso aggiunto" = Table.TransformColumns(#"Inserita moltiplicazione", {{"Data", each "01/" & _, type text}}),
    #"Suffisso aggiunto" = Table.TransformColumns(#"Prefisso aggiunto", {{"Data", each _ & "/2020", type text}}),
    #"Modificato tipo1" = Table.TransformColumnTypes(#"Suffisso aggiunto",{{"Data", type date}}),
    #"Aggiunta colonna personalizzata" = Table.AddColumn(#"Modificato tipo1", "FiltroMese", each Date.Month(Date.AddMonths([Data],-3)), Int64.Type),
    #"Filtrate righe1" = Table.SelectRows(#"Aggiunta colonna personalizzata", each [FiltroMese] <= FiltroMese),
    #"Rimosse colonne" = Table.RemoveColumns(#"Filtrate righe1",{"FiltroMese", "Pos.°"}),
    #"Nome del mese estratto" = Table.TransformColumns(#"Rimosse colonne", {{"Data", each Text.Proper(Date.MonthName(_)), type text}})
in
    #"Nome del mese estratto"
Poi per l'aggregazione non ho capito se vuoi che da quelle 4 colonne con i valori per i singoli mesi ne vuoi una sola che riporti il totale, oppure vuoi lasciare le 4 colonne, ed aggiungerne una con il totale.

A presto,

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
Andre962
Messaggi: 6 | Topic creati
Iscritto il: mar 22 dic 2020, 19:23

somma Colonne PQ

Messaggio da Andre962 »

scusa ci ho messo un po' perchè stavo cercando di capire il codice che mi hai allegato.
Devo dire che è molto più chiaro rispetto a quello che avevo scritto io. :)
Per la query vuota ho fatto un riferimento alla query "input insieme" ed ho inserito il tuo codice, corretto?
l'obiettivo è quello di ottenere il report riportato nell'immagine.
Con questi dati vorrei ottenere le tre celle verdi il target, il target del mese(luglio) e il target YTD ( che sarebbe in questo caso Marzo,aprile,maggio,giugno,luglio).


Immagine
Avatar utente

Andrea90
Messaggi: 2240 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 672 volte
Contatta:

somma Colonne PQ

Messaggio da Andrea90 »

Ciao Andre962,

Il codice che ti ho dato lo puoi inserire in una query vuota, basta che una volta creata, entri nell'editor avanzato ed elimini tutto quello che trovi di default, e poi incolli il testo copiato.

Quello che ottieni è una tabella che se caricata all'interno di una pivot ti può portare facilmente ad un output di questo tipo:

Immagine

Se invece vuoi ottenere un risultato più specifico allora il mio consiglio è che la tabella che ti genera quel codice la puoi inserire all'interno di un modello dati, così da poter sfruttare il linguaggio DAX per crearti misure ad hoc (questo perché per come la intendo io PowerQuery è lo strumento che prepara il dato, e lo da in pasto al DAX nel caso si vogliano ottenere misure ad hoc)

Fare quello che chiedi tu con PowerQuery penso sia comunque possibile ma richiederebbe l'inserimento di altro codice che complica solo le cose, mentre il DAX è fatto apposta per poter essere versatile.

Se invece vuoi proseguire con la strada delle PowerQuery fa sapere che nel caso vediamo di trovare una soluzione per avere una tabella con le sole colonne da te indicate.

A presto,

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link
Rispondi