Ciao
masnut,
Puoi risolvere con il DAX utilizzando una tabella Calendar e sfruttando le time intelligence function, come ad esempio la funzione DATEADD()
Link -->
https://dax.guide/dateadd/
Oppure in PowerQuery prevedendo il calcolo di una colonna che prelevi il valore della riga corrente sottraendolo poi a quello della riga precedente così da avere il valore giornaliero.
La prima soluzione è ovviamente più semplice, ma ti porta ad utilizzare una misura, e pertanto dovrai avere un report con il dettaglio del giorno, altrimenti non funzionerà.
La seconda invece è più complessa ma potrai poi avere una colonna da utilizzare liberamente, per intenderci ecco un esempio semplice:
Codice: Seleziona tutto
let
Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content],
#"Modificato tipo" = Table.TransformColumnTypes(Origine,{{"Data", type date}, {"Valore", Int64.Type}}),
#"Ordinate righe" = Table.Sort(#"Modificato tipo",{{"Data", Order.Ascending}}),
Index1 = Table.AddIndexColumn(#"Ordinate righe", "Indice", 1, 1, Int64.Type),
Index2 = Table.AddIndexColumn(Index1, "Indice2", 0, 1, Int64.Type),
#"Merge di query eseguito" = Table.NestedJoin(Index2, {"Indice2"}, Index2, {"Indice"}, "Personalizzato1", JoinKind.LeftOuter),
#"Tabella Personalizzato1 espansa" = Table.ExpandTableColumn(#"Merge di query eseguito", "Personalizzato1", {"Valore"}, {"Valore.1"}),
#"Inserita sottrazione" = Table.AddColumn(#"Tabella Personalizzato1 espansa", "Valore Giorno", each if [Valore] - [Valore.1] = null then [Valore] else [Valore] - [Valore.1], Int64.Type),
#"Rimosse colonne" = Table.RemoveColumns(#"Inserita sottrazione",{"Indice", "Indice2", "Valore.1"})
in
#"Rimosse colonne"
Andrea